*{box-sizing:border-box}html{background:#0d1622}body{margin:0;background:#0d1622;color:#f5f6f8;font:16px/1.45 -apple-system,BlinkMacSystemFont,"Noto Sans TC",system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:#e4c78f;-webkit-tap-highlight-color:transparent}main{padding:18px 16px calc(105px + env(safe-area-inset-bottom,0px));max-width:720px;margin:auto;min-height:100dvh}.top{display:flex;align-items:center;justify-content:space-between;padding-bottom:17px;gap:12px}.brand{font-weight:850;font-size:18px;letter-spacing:-.6px}.brand em{color:#dec187;font-style:normal}.mini{font-size:12px;color:#a4b6c8}.title{font-size:28px;font-weight:850;letter-spacing:-.8px;line-height:1.2;margin:6px 0 8px}.lead{color:#acbbcd;font-size:13px;margin:0 0 18px}.card{background:#1a293b;border:1px solid #394d64;border-radius:17px;padding:16px;margin:12px 0}.card h2{font-size:16px;margin:0 0 12px}.tilegrid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:18px 0}.tile{display:flex;flex-direction:column;justify-content:center;gap:11px;min-height:145px;padding:17px;border:1px solid #3b5068;background:#1a2a3e;border-radius:16px;color:#f7f8fa}.tile b{font-size:18px}.tile span{font-size:12px;color:#adbdd0}.tile svg{width:27px;height:27px;color:#dfc38c;stroke-width:1.8;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.field{width:100%;min-width:0;border:1px solid #50657d;background:#0f1e2e;border-radius:12px;padding:13px;color:white;font-size:16px;outline-color:#e3c58f}.field::placeholder{color:#7f91a4}label{display:block;font-size:13px;font-weight:700;color:#d5e0ed;margin:13px 0 6px}.btn{border:0;background:#e0c189;color:#182535;border-radius:12px;padding:13px 15px;min-height:47px;font-weight:800;font-size:15px}.btn.sub{background:#293d54;color:#f7f8fa;border:1px solid #51677f}.btn.warn{background:#4d303a;color:#ffd3d3}.btn:disabled{opacity:.55}.full{width:100%}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.row .field{flex:1}.buttons{display:flex;flex-wrap:wrap;gap:8px}.buttons>*{flex:1}.buttons .btn{font-size:13px;padding:11px;min-width:0}.result{border:1px solid #42566d;border-radius:13px;padding:14px;margin:10px 0;background:#162638}.result b{font-size:16px}.result p{font-size:12px;color:#b3c0ce;margin:5px 0 10px}.pill{display:inline-block;border-radius:100px;font-size:11px;padding:4px 9px;background:#31475d;color:#dbe9f6}.pill.good{background:#24463a;color:#b5eacd}.pill.bad{background:#4a313c;color:#ffcbd0}.muted{font-size:12px;color:#aabbcd}.msg{padding:11px;margin:12px 0;background:#244138;color:#c3eed8;border-radius:11px;font-size:13px}.msg.error{background:#54323d;color:#ffbfc5}.none{display:none!important}.bar{display:flex;justify-content:space-between;gap:11px;align-items:center}.bar h2{margin:0}.link{display:block;background:#1b2b3e;color:#f5f7fa;border:1px solid #3b5068;border-radius:12px;padding:14px;margin:9px 0;font-weight:700}.link span{float:right;color:#dfc28d}.split{display:grid;grid-template-columns:1fr 1fr;gap:9px}.count{border:1px solid #3b5066;padding:13px;background:#1a2b3e;border-radius:12px}.count strong{display:block;font-size:22px;margin-top:4px}.count small{font-size:11px;color:#a9bbcc}.checkset{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 11px}.checkset label{display:flex;align-items:center;gap:7px;border:1px solid #41576d;background:#23364b;border-radius:10px;padding:10px;font-size:13px;margin:0;font-weight:600;cursor:pointer}.checkset input{width:19px;height:19px;accent-color:#dfbf88}.detail{word-break:break-all;font-size:12px;color:#e4c993}.notice{font-size:12px;color:#e9d2a4;border:1px solid #756445;background:#292e38;border-radius:12px;padding:11px;margin:12px 0}.bottom{position:fixed;bottom:0;left:0;right:0;z-index:9999;display:grid;grid-template-columns:repeat(4,1fr);background:#112031;border-top:1px solid #3d526b;padding:8px 7px calc(9px + env(safe-area-inset-bottom,0px));pointer-events:auto;touch-action:manipulation}.bottom a{color:#a1b2c4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:750;min-height:48px;border-radius:11px;pointer-events:auto}.bottom a.on{color:#f5d99c;background:#2b3f54}.bottom svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linejoin:round;stroke-linecap:round}textarea.field{min-height:80px;resize:vertical}.stack{display:grid;gap:10px}.sublink{font-size:13px;color:#e3c58e;font-weight:700}.toplink{font-size:12px;white-space:nowrap}.ft{font-size:11px;color:#71859a;margin-top:20px;line-height:1.6}.mono{font-size:12px;word-break:break-all}.callout{padding:11px;border-radius:11px;background:#253749;color:#cbd8e5;font-size:12px;margin:12px 0}.shadow{box-shadow:0 5px 30px #0003}@media(min-width:800px){.bottom{left:50%;transform:translateX(-50%);max-width:720px}.title{font-size:32px}}