.cost-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.cost-heading h1{margin:8px 0;font-size:30px}.cost-heading p,.cost-muted{color:#64748b;font-size:14px;line-height:1.6}.cost-year{display:grid;gap:8px;font-size:13px;color:#52657b}.cost-year select{min-width:120px;padding:10px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#142d47}.cost-guide{display:flex;gap:18px;align-items:center;background:#edf3f8;border-radius:10px;padding:16px 20px;margin-bottom:24px;font-size:13px;color:#546b82}.cost-guide strong{color:#142d47;margin-right:10px}.cost-guide b{color:#9aaebf}.cost-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px;align-items:start}.cost-card{background:white;border:1px solid #dce3eb;border-radius:14px;padding:24px}.cost-card h2{font-size:18px;margin:0 0 10px}.cost-upload{position:relative;display:block;border:1px dashed #b6c6d5;border-radius:10px;padding:15px;margin:15px 0;cursor:pointer;background:#fcfdff;transition:.15s}.cost-upload:hover,.cost-upload.drag{border-color:#26718d;background:#edf7fa}.cost-upload input{position:absolute;width:1px;height:1px;opacity:0}.cost-upload:focus-within{outline:2px solid #237993;outline-offset:2px}.cost-upload-title{display:flex;justify-content:space-between;font-weight:650;font-size:14px;color:#203d58}.cost-upload-title span{color:#4f8695}.cost-upload small{display:block;font-size:12px;color:#74869a;margin-top:5px}.cost-file-name{font-size:12px;color:#22667c;display:block;margin-top:10px;overflow-wrap:anywhere}.cost-file-item{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:8px;padding:5px 0;color:#46617b}.cost-file-item span{overflow-wrap:anywhere}.cost-file-item button{border:0;background:#edf2f7;border-radius:5px;cursor:pointer;padding:3px 8px}.cost-count-label{font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.cost-count-label input{width:85px;padding:8px;border:1px solid #bac8d5;border-radius:6px}.cost-count-ok{font-size:13px;color:#127340}#cost-run{background:#183b56;color:white;border:0;border-radius:9px;width:100%;padding:14px;margin-top:8px;font-size:15px;font-weight:600;cursor:pointer}#cost-run:disabled{background:#d6e0e8;color:#7c8e9f;cursor:not-allowed}#cost-service{font-size:12px;margin-bottom:0}.cost-empty{min-height:550px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.cost-empty>p{max-width:400px;color:#6d8093;line-height:1.8;font-size:14px}.cost-empty-icon{background:#eef5f5;color:#3d817c;font-size:34px;width:64px;height:64px;border-radius:18px;margin-bottom:24px}.cost-rules{font-size:13px;line-height:1.7;text-align:left;margin:18px 0;padding:18px 24px;background:#f6f9fc;border-radius:8px}.cost-rules p:first-child b{color:#008a2e}.cost-rules p:nth-child(2) b{color:#b74343}.cost-empty details{max-width:440px;font-size:13px;color:#6b7f91;line-height:1.7}.cost-empty summary{cursor:pointer}.cost-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.cost-metrics>div{padding:18px;background:white;border:1px solid #dce3eb;border-radius:12px}.cost-metrics strong{display:block;font-size:26px;color:#183b56}.cost-metrics span{display:block;font-size:12px;color:#6e8092;margin-top:6px}.cost-result-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.cost-result-head label{font-size:12px;color:#66788d}.cost-result-head select{margin-left:8px;border:1px solid #cbd5e1;padding:7px;border-radius:6px;background:white}#cost-summary{font-size:13px;color:#63778a;line-height:1.7}.cost-downloads{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.cost-download{font-size:13px;color:#235f77;background:#edf5f7;border:1px solid #c2dce2;padding:10px 13px;border-radius:8px;text-decoration:none}.cost-download:hover{background:#ddeef1}#cost-issues{background:#fff5f3;padding:14px 16px;border-radius:8px;font-size:13px;line-height:1.8;color:#853d36;margin-bottom:20px}#cost-issues summary{cursor:pointer;font-weight:600}#cost-issues ul{max-height:260px;overflow:auto;padding-left:20px}.cost-table-wrap{overflow:auto;max-height:620px}.cost-table-wrap table{border-collapse:collapse;width:100%;font-size:12px}.cost-table-wrap th{background:#f4f7fa;text-align:left;color:#5b7184;padding:13px 10px;position:sticky;top:0;white-space:nowrap}.cost-table-wrap td{padding:14px 10px;border-bottom:1px solid #e7edf2;vertical-align:top}.cost-table-wrap small{display:block;color:#8090a0;margin-top:5px;line-height:1.6}.cost-number{white-space:nowrap;font-variant-numeric:tabular-nums}.cost-badge{white-space:nowrap;border-radius:4px;padding:4px 6px;font-size:11px}.cost-badge.good{background:#e8f4ed;color:#227046}.cost-badge.bad{background:#ffe9e4;color:#a7463a}.cost-trace{min-width:210px;max-width:350px;overflow-wrap:anywhere;line-height:1.5}.cost-message{font-size:14px;line-height:1.7;color:#385b74;padding:8px 0}#cost-page{max-width:1600px;margin:auto}@media(max-width:1150px){.cost-layout{grid-template-columns:280px minmax(0,1fr)}.cost-card{padding:18px}.cost-guide{gap:10px;font-size:12px}}@media(max-width:950px){.cost-layout{grid-template-columns:1fr}.cost-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.cost-inputs>h2,.cost-inputs>p,.cost-inputs>button,#cost-files{grid-column:1/-1}.cost-upload{margin:0}.cost-empty{min-height:350px}.cost-guide{flex-wrap:wrap}}@media(max-width:550px){.cost-inputs{display:block}.cost-upload{margin:14px 0}.cost-metrics{grid-template-columns:1fr 1fr}.cost-heading{align-items:flex-start}.cost-heading h1{font-size:24px}.cost-guide strong{width:100%}.cost-empty{padding:24px}}

/* CBSA input layout */
.cb-field{display:flex;flex-direction:column;gap:8px;margin-top:20px;font-size:13px;font-weight:600;color:#40566b}.cb-field select,.cb-field input{display:block;box-sizing:border-box;width:100%;max-width:none;min-width:0;height:42px;margin:0;padding:9px 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#203d58;font:inherit;font-weight:400;color-scheme:light}.cb-field select:focus,.cb-field input:focus{outline:2px solid #26718d;outline-offset:2px}#cb-meta{font-size:12px;line-height:1.7;color:#64748b;overflow-wrap:anywhere;margin:16px 0 20px}
#cb-checklist{margin-top:24px}#cb-checklist .cost-table-wrap{margin-top:12px;max-height:620px}#cb-checklist td{min-width:95px;white-space:pre-line}#cb-checklist td:nth-last-child(-n+3){min-width:240px}.cb-bad{background:#ffe1e1!important;color:#9d2222}.cb-good{background:#e1f2e6!important;color:#22643b}.cb-warn{background:#fff1c7!important;color:#815f10}.cb-filter{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:14px}.cb-downloads{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
#cb-original-drop.received,#cb-system-drop.received{border-style:solid;border-color:#90b9a1;background:#f2f9f4}

.cb-issues{background:#fff5f3;border:1px solid #efc8c3;padding:14px 16px;border-radius:8px;font-size:13px;line-height:1.8;color:#a3312b;margin:18px 0}.cb-issues summary{cursor:pointer;font-weight:600}.cb-issues summary:focus-visible{outline:2px solid #a3312b;outline-offset:4px}.cb-issues ul{max-height:280px;overflow:auto;padding-left:20px;overflow-wrap:anywhere}.cb-issues li+li{margin-top:10px}.cb-issues-hide,.cb-issues[open] .cb-issues-show{display:none}.cb-issues[open] .cb-issues-hide{display:inline}
