.cxi { background:#fff; border:1px solid #e5e7ed; border-radius:14px; padding:24px; box-shadow:0 3px 16px #28325206; color:#283252; font-size:14px; }
.cxi [hidden] { display:none !important; }
.cxi * { box-sizing:border-box; }
.cxi h1 { font-size:25px; font-weight:750; line-height:1.35; margin:2px 0 6px; }
.cxi h2 { font-size:16px; font-weight:700; margin:0; }
.cxi h3 { font-size:14px; font-weight:700; }
.cxi p { margin:0; }
.cxi .cxi-eyebrow { font-size:12px; color:#cc7936; font-weight:700; }
.cxi .cxi-muted,.cxi .cxi-hint { color:#707787; font-size:13px; line-height:1.6; }
.cxi .cxi-hint { font-size:12px; }
.cxi-heading,.cxi-section-heading,.cxi-form-footer,.cxi-table-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.cxi-heading { margin-bottom:20px; }
.cxi-section-heading { margin-bottom:14px; }
.cxi-section-heading a { font-size:12px; color:#626b83; }
.cxi-section-heading .cxi-muted { margin-top:4px; }
.cxi-panel { background:#f7f8fa; border:1px solid #eceef2; border-radius:12px; padding:18px; margin-bottom:24px; }
.cxi-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:14px 12px; margin-bottom:12px; }
.cxi-fields label { display:flex; flex-direction:column; gap:6px; font-size:12px; font-weight:600; min-width:0; }
.cxi-file-field { grid-column:1/-1; }
.cxi .cxi-fields input,.cxi .cxi-fields select { width:100%; min-width:0; height:36px; margin:0; padding:0 10px; border:1px solid #dce0e7; border-radius:8px; background:#fff; color:#283252; font:400 13px inherit; font-family:inherit; font-size:13px; }
.cxi .cxi-fields input[readonly] { background:#eef0f4; color:#646c7d; }
.cxi .cxi-fields input[type=file] { padding:0; max-width:540px; font-size:12px; line-height:34px; }
.cxi input[type=file]::file-selector-button { height:34px; border:0; border-right:1px solid #dce0e7; padding:0 14px; margin-right:10px; background:#fff; color:#283252; font:inherit; cursor:pointer; }
.cxi .cxi-button { display:inline-flex; flex:none; gap:8px; align-items:center; justify-content:center; min-height:36px; height:36px; border-radius:999px; padding:0 16px; font-family:inherit; font-size:14px; font-weight:700; text-decoration:none; border:1px solid transparent; cursor:pointer; white-space:nowrap; }
.cxi .cxi-primary { background:#ff596f; color:#fff; }
.cxi .cxi-secondary { background:#fff; border-color:#dce0e7; color:#404a62; }
.cxi button:disabled { opacity:.5; cursor:not-allowed; }
.cxi :is(button,a,input,select,summary,[tabindex]):focus-visible { outline:2px solid #c63350; outline-offset:3px; }
.cxi .cxi-form-footer { border-top:1px solid #e5e8ef; padding-top:14px; margin-top:14px; }
.cxi-message { border-radius:8px; background:#f1f4fa; color:#4e5b73; padding:12px 14px; margin:0 0 16px; }
.cxi-message.is-error { background:#fff0f2; color:#a02f42; }
.cxi-summary { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.cxi-stat { background:#f7f8fa; border:1px solid #eceef2; border-radius:10px; padding:12px 16px; min-width:105px; }
.cxi-stat span { display:block; font-size:12px; color:#707787; }
.cxi-stat strong { display:block; font-size:20px; margin-top:4px; font-weight:700; }
.cxi-money { white-space:nowrap; font-variant-numeric:tabular-nums; }
.cxi-money small { font-size:70%; font-weight:inherit; }
.cxi-stat .cxi-money { display:block; margin-top:4px; font-size:20px; font-weight:700; color:#283252; }
.cxi-errors { background:#fff3f5; border:1px solid #f5d9de; border-radius:10px; padding:14px; color:#9c3144; margin-bottom:14px; }
.cxi-errors ul { list-style:disc; padding-left:20px; max-height:160px; overflow:auto; margin-top:8px; line-height:1.7; }
.cxi-table-toolbar { font-size:12px; margin:12px 0 8px; color:#707787; }
.cxi-table-toolbar label,.cxi-confirm label { display:flex; gap:8px; align-items:flex-start; }
.cxi input[type=checkbox] { flex:0 0 auto; width:16px; height:16px; accent-color:#ff596f; margin-top:2px; }
.cxi-table-shell { max-height:560px; overflow:auto; border:1px solid #e5e7ed; border-radius:10px; }
.cxi table { width:100%; min-width:1040px; table-layout:fixed; border-collapse:separate; border-spacing:0; font-size:12px; }
.cxi th { position:sticky; top:0; z-index:1; padding:12px 10px; background:#f4f5f8; color:#646c7d; font-weight:600; text-align:left; border-bottom:1px solid #e5e7ed; }
.cxi td { padding:10px; vertical-align:top; border-bottom:1px solid #eef0f4; overflow-wrap:anywhere; line-height:1.55; }
.cxi tr:last-child td { border-bottom:0; }
.cxi tr.is-error td { background:#fffafb; }
.cxi th:nth-child(1) { width:66px; }.cxi th:nth-child(2) { width:155px; }.cxi th:nth-child(3) { width:210px; }.cxi th:nth-child(4) { width:96px; }.cxi th:nth-child(5) { width:56px; }.cxi th:nth-child(6) { width:64px; }.cxi th:nth-child(7),.cxi th:nth-child(8) { width:120px; }.cxi th:nth-child(9) { width:190px; }
.cxi .cxi-number { text-align:right; font-variant-numeric:tabular-nums; }
.cxi td .cxi-muted { display:block; font-size:11px; }
.cxi-pill { display:inline-flex; border-radius:999px; background:#eaf7f0; color:#28754e; padding:4px 9px; font-size:12px; white-space:nowrap; }
.cxi-pill.is-error { color:#a02f42; background:#fff0f2; }
.cxi-confirm { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:18px; padding-top:16px; border-top:1px solid #eceef2; }
.cxi-confirm label { flex:1 1 300px; font-size:13px; }
.cxi-confirm .cxi-hint { flex-basis:100%; }
.cxi-success { display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:20px; background:#edf8f1; border-radius:12px; margin:18px 0; }
.cxi-success>i { font-size:28px; color:#2a8455; }.cxi-success>div { flex:1 1 240px; }.cxi-success p { margin-top:6px; }
.cxi-guide { margin-top:20px; border-top:1px solid #eceef2; padding-top:16px; font-size:12px; color:#707787; }
.cxi-guide summary { cursor:pointer; color:#505b72; font-weight:600; }.cxi-guide p { margin-top:9px; line-height:1.7; }
@media(max-width:650px) {
 .cxi { padding:16px; }.cxi h1 { font-size:22px; }.cxi-heading,.cxi-section-heading,.cxi-form-footer { align-items:flex-start; flex-wrap:wrap; }
 .cxi-panel { padding:14px; }.cxi-fields { grid-template-columns:1fr; }.cxi-confirm { align-items:stretch; }.cxi-confirm .cxi-button { width:100%; }.cxi-summary { gap:8px; }.cxi-stat { min-width:90px; padding:10px 12px; }.cxi-table-toolbar { align-items:flex-start; }
}
