:root{color:#1c2733;background:#f2f5f8;font-family:system-ui,Noto Sans TC,sans-serif}body{margin:0}header{color:#fff;background:#12344d;align-items:center;gap:12px;padding:12px 20px;display:flex}header .muted{color:#c5d4df;margin-left:auto}.grid{grid-template-columns:1fr 1fr;gap:16px;max-width:1100px;margin:auto;padding:20px;display:grid}.wide{grid-column:1/-1}.card{background:#fff;border-radius:8px;padding:16px 20px;box-shadow:0 1px 3px #0000001f}.login{flex-direction:column;gap:10px;max-width:320px;margin:12vh auto;display:flex}.login h1{margin:0}.row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}input,select,button{font:inherit;border:1px solid #c7d1da;border-radius:6px;padding:8px 10px}button{color:#fff;cursor:pointer;background:#1769aa;border-color:#1769aa}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e6ebf0;padding:6px 8px}.muted{color:#66788a}.error{color:#b3261e}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.scroll{overflow-x:auto}.bar{width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:3px 0;display:flex}.bar:hover{background:#eef3f7}.bar-label{text-overflow:ellipsis;white-space:nowrap;flex:0 0 38%;overflow:hidden}.bar-track{background:#e6ebf0;border-radius:3px;flex:1;height:10px}.bar-fill{background:#1769aa;border-radius:3px;height:100%;display:block}.bar-value{text-align:right;flex:0 0 32px}.cell{padding:2px 8px}.warn{color:#9a5b00;font-weight:600}
