:root{font-family:Arial,"Microsoft JhengHei",sans-serif;color:#19354a;background:#f4f7fa;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,.upload{border:1px solid #cbd7e1;background:#fff;color:#35516a;border-radius:6px;padding:10px 14px;cursor:pointer}button:hover,.upload:hover{background:#eaf1f8}button:disabled{opacity:.5;cursor:wait}.primary{background:#416e9e;color:white;border-color:#416e9e}.primary:hover{background:#345c87}header{height:72px;background:white;border-bottom:1px solid #dce4eb;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.brand{display:flex;gap:12px;align-items:center;font-weight:bold;font-size:18px}.brand small{display:block;font-weight:normal;font-size:11px;color:#758592;margin-top:5px}.mark{background:#eaf1f8;color:#416e9e;font-size:28px;border-radius:8px;padding:5px 10px}#cloud{font-size:12px;color:#47735b}main{max-width:1520px;margin:auto;padding:28px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{letter-spacing:2px;color:#5d7b98;font-size:11px}h1{font-size:28px;margin:0}h2{font-size:18px;margin:0}h3{font-size:16px}.muted,.hint{color:#718391;font-size:13px;line-height:1.7}.heading .muted{margin-bottom:0}.actions{display:flex;flex-wrap:wrap;gap:8px}.tabs{display:flex;gap:6px;border-bottom:1px solid #d5e0e9;overflow:auto;margin-bottom:18px}.tabs button{border:0;background:transparent;border-bottom:3px solid transparent;border-radius:0;white-space:nowrap;padding:14px 20px}.tabs button.active{color:#345f8d;border-bottom-color:#416e9e;background:#eaf1f8;font-weight:bold}.filterbar{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#edf2f7;padding:12px 16px;border-radius:8px;margin-bottom:18px}.filterbar strong{font-size:13px}#filterLabel{font-size:12px;color:#718391;display:block;margin-top:6px}.filterbar button{padding:7px 10px;font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);background:white;border:1px solid #dbe4ec;border-radius:8px;margin-bottom:22px}.metrics>div{padding:20px 24px;border-right:1px solid #e3eaf0}.metrics>div:last-child{border:0}.metrics span,.metrics small{display:block;color:#718391}.metrics strong{display:block;font-size:34px;margin:12px 0;color:#345f8d;font-variant-numeric:tabular-nums}.metrics small{font-size:11px}#remaining{color:#b1713b}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card{background:white;border:1px solid #dbe4ec;border-radius:8px;padding:22px;margin-bottom:18px;min-width:0}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.cardhead>span{font-size:11px}.chartrow{margin:14px 0}.chartlabel{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:8px}.chartlabel span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track{background:#edf2f7;border-radius:4px;height:12px;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,#759dcc,#bfd3ea);border-radius:4px}.gap .fill{background:linear-gradient(90deg,#c9a26d,#e9d7bc)}.insight p{font-size:14px;line-height:1.8;color:#536d80}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;white-space:nowrap}th,td{padding:12px 14px;border-bottom:1px solid #e8edf2;text-align:right;font-variant-numeric:tabular-nums}th{background:#edf3f8;color:#587189;font-size:13px}th:first-child,td:first-child{text-align:left}td.text,th.text{text-align:left}tbody tr:hover{background:#f8fafc}tr.subtotal td{background:#e4edf6;font-weight:bold}tfoot td{background:#d9e6f3;font-weight:bold}.pct{min-width:120px;position:relative;background:#eff4fa;height:24px;border-radius:3px;overflow:hidden}.pct i{display:block;background:#cbddf1;height:100%}.pct span{position:absolute;inset:0;text-align:center;line-height:24px;color:#315c84}.regiongroup td{background:#f7f9fc;color:#4a6d8f;font-weight:bold;text-align:left}.hint{margin-top:0}.upload{display:inline-block;margin:8px 0 18px}.upload input{display:none}input[type=search]{padding:10px;border:1px solid #cbd7e1;border-radius:5px;max-width:100%;background:white}dialog{border:1px solid #cbd7e1;border-radius:12px;padding:26px;max-width:900px;width:calc(100% - 30px);color:#29445b}dialog::backdrop{background:#18344b66}dialog h2{margin-bottom:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}#choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:55vh;overflow:auto;margin-top:18px}#choices label{display:flex;align-items:center;gap:8px;padding:5px;font-size:14px}#choices input{width:19px;height:19px}#choiceSearch{margin-bottom:12px;width:100%}#message{padding:14px 18px;background:#e6eff8;border:1px solid #b4cce3;border-radius:8px;margin-bottom:18px;line-height:1.7}#message.error{background:#fff2f2;color:#9b3939;border-color:#e4bebe}footer{font-size:11px;display:flex;justify-content:space-between;color:#81909d;gap:20px;margin:25px 0 8px}.fileline{padding:12px 0;border-bottom:1px solid #e7edf3;overflow-wrap:anywhere;line-height:1.7}.fileline select{margin:10px;padding:6px}.qualitychips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.qualitychips span{background:#f1f5f9;padding:10px;border-radius:5px;font-size:13px}.empty{text-align:center;padding:35px;color:#718391}button:focus-visible,input:focus-visible{outline:3px solid #7aa4cc;outline-offset:2px}[hidden]{display:none!important}
@media(max-width:850px){header{padding:0 16px}main{padding:20px 14px}.heading{display:block}.heading>.actions{margin-top:18px}.filterbar{display:block}.filterbar>.actions{margin-top:12px}.metrics{grid-template-columns:1fr 1fr}.metrics>div{padding:16px}.metrics>div:nth-child(-n+2){border-bottom:1px solid #e3eaf0}.metrics>div:nth-child(2){border-right:0}.metrics strong{font-size:29px}.split{grid-template-columns:1fr;gap:0}.card{padding:17px}.cardhead{flex-wrap:wrap}.tabs button{padding:13px}.brand{font-size:15px}#cloud{max-width:100px;text-align:right;font-size:11px}#choices{grid-template-columns:1fr}footer{display:block}footer span{display:block;margin:6px 0}.chartlabel{font-size:12px}th,td{padding:11px}#importBody{max-height:60vh;overflow:auto}}

.detailfilters{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.detailfilters select{padding:9px;border:1px solid #cbd7e1;border-radius:5px;color:#35516a}.status{display:inline-block;padding:4px 8px;border-radius:4px;background:#eaf2fa;font-size:12px}.status.warn{background:#fff0d9;color:#8f5e20}#rawBody{max-height:65vh;overflow:auto}#rawBody dt{font-weight:bold;color:#4b6f90;margin-top:16px}#rawBody dd{margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}

.detailcount{border:0;padding:3px 8px;color:#315f91;text-decoration:underline;background:#edf4fb;min-width:45px}
