.crm75 { box-sizing:border-box; min-width:0; max-width:100%; padding:20px; background:#fff; color:#202b31; font:14px/1.5 system-ui,sans-serif; letter-spacing:0; }
.crm75 * { box-sizing:border-box; }
.crm75 .crm75-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.crm75 h2 { margin:0; font-size:22px; line-height:1.3; overflow-wrap:anywhere; }
.crm75 p { overflow-wrap:anywhere; }
.crm75 .crm75-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:8px 12px; background:#fff; color:#204938; font:inherit; font-weight:600; border:1px solid #778e83; border-radius:4px; cursor:pointer; white-space:normal; }
.crm75 .crm75-button svg,.crm75 .crm75-button i { width:18px; height:18px; flex:0 0 18px; }
.crm75 .crm75-icon-button { width:40px; min-width:40px; height:40px; padding:8px; }
.crm75 .crm75-primary { background:#176653; border-color:#176653; color:#fff; }
.crm75 button:hover:not(:disabled) { background:#eaf3ef; }
.crm75 .crm75-primary:hover:not(:disabled) { background:#12513f; }
.crm75 :disabled { opacity:.6; cursor:not-allowed; }
.crm75 :is(button,input,select,[tabindex]):focus-visible { outline:3px solid #ac4900; outline-offset:3px; }
.crm75 label { display:flex; flex-direction:column; gap:5px; min-width:0; font-weight:600; overflow-wrap:anywhere; }
.crm75 input,.crm75 select { width:100%; min-width:0; max-width:100%; min-height:40px; padding:8px 10px; color:#202b31; background:#fff; border:1px solid #8b9ba5; border-radius:4px; font:inherit; font-weight:400; }
.crm75 input[type=date] { width:100%; min-width:0; }
.crm75 .crm75-source { padding:10px 12px; border-left:3px solid #657a85; background:#f1f5f6; margin:0 0 16px; font-weight:600; }
.crm75 .crm75-source span { display:block; font-weight:400; font-size:13px; margin-top:3px; }
.crm75 .crm75-form { padding:0 0 20px; border-bottom:1px solid #cbd3d7; margin-bottom:20px; }
.crm75 .crm75-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr); align-items:start; gap:14px; }
.crm75 .crm75-dates { display:grid; grid-template-columns:180px 180px max-content; align-items:end; gap:14px; margin-top:14px; }
.crm75 .crm75-alert { color:#a22222; font-weight:600; }
.crm75 .crm75-blockers { margin-top:12px; color:#50616b; }
.crm75 .crm75-blockers summary { width:fit-content; min-height:32px; font-weight:600; cursor:pointer; }
.crm75 .crm75-blockers ul { margin:4px 0 0; padding-left:24px; overflow-wrap:anywhere; }
.crm75 :is(.crm75-alert,.crm75-status,.crm75-blockers,.crm75-notification):empty { display:none; }
.crm75 .crm75-content { min-width:0; max-width:100%; }
.crm75 .crm75-table { width:100%; max-width:100%; overflow-x:auto; border-block:1px solid #cbd3d7; }
.crm75 table { border-collapse:collapse; width:100%; min-width:1000px; text-align:left; font:inherit; }
.crm75 caption { text-align:left; padding:12px 10px; font-weight:650; color:#354c58; }
.crm75 th,.crm75 td { padding:12px 10px; border-bottom:1px solid #dce2e5; vertical-align:top; max-width:300px; overflow-wrap:anywhere; }
.crm75 thead th { background:#f1f5f6; font-weight:650; font-size:13px; color:#354c58; white-space:nowrap; overflow-wrap:normal; }
.crm75 tbody th { width:20%; min-width:170px; font-weight:600; }
.crm75 td:nth-child(2) { min-width:155px; }
.crm75 td:last-child { min-width:250px; }
.crm75 .crm75-secondary { display:block; margin-top:3px; font-weight:400; font-size:13px; color:#50616b; }
.crm75 .crm75-report-name { display:block; }
.crm75 .crm75-cell-value { display:block; min-width:0; }
.crm75 .crm75-mobile-label { display:none; }
.crm75 .crm75-number { font-variant-numeric:tabular-nums; }
.crm75 .crm75-current { background:#edf5ef; }
.crm75 .crm75-current th[scope=row] { border-left:4px solid #176653; }
.crm75 .crm75-actions { display:flex; flex-wrap:wrap; gap:8px; }
.crm75 .crm75-notify { display:flex; flex-direction:column; align-items:start; gap:8px; margin-top:12px; }
.crm75 .crm75-notify label { width:100%; }
.crm75 .crm75-notify p { margin:0; font-size:13px; }
.crm75 .crm75-empty { padding-block:16px; color:#50616b; }
.crm75 .crm75-bindings { padding:0 0 18px; margin:0 0 18px; border-bottom:1px solid #cbd3d7; }
.crm75 .crm75-bindings summary { width:fit-content; min-height:32px; font-weight:600; cursor:pointer; }
.crm75 summary:focus-visible { outline:3px solid #ac4900; outline-offset:3px; }
.crm75 .crm75-binding-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr) max-content; align-items:end; gap:14px; padding-top:12px; }
@media(max-width:750px) {
  .crm75 .crm75-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crm75 .crm75-fields label:last-child { grid-column:1 / -1; }
  .crm75 .crm75-dates { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crm75 .crm75-dates button { grid-column:1 / -1; justify-self:start; }
  .crm75 .crm75-binding-form { grid-template-columns:minmax(0,1fr); }
  .crm75 .crm75-binding-form button { justify-self:start; }
}
@media(max-width:450px) {
  .crm75 { padding:12px; }
  .crm75 h2 { font-size:20px; }
  .crm75 .crm75-fields,.crm75 .crm75-dates { grid-template-columns:minmax(0,1fr); }
  .crm75 .crm75-fields label:last-child,.crm75 .crm75-dates button { grid-column:auto; }
}
@media(max-width:600px) {
  .crm75 .crm75-portal-table { overflow:visible; }
  .crm75 .crm75-portal-table table { display:block; min-width:0; }
  .crm75 .crm75-portal-table caption { display:block; }
  .crm75 .crm75-portal-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .crm75 .crm75-portal-table tbody { display:block; }
  .crm75 .crm75-portal-table tbody tr { display:block; padding:10px 0; border-top:1px solid #cbd3d7; }
  .crm75 .crm75-portal-table tbody th { display:block; width:100%; min-width:0; max-width:none; padding:8px 10px; border-bottom:0; background:transparent; text-transform:none; font-size:16px; }
  .crm75 .crm75-portal-table td { display:grid; grid-template-columns:minmax(80px,.65fr) minmax(0,1.35fr); gap:12px; width:100%; min-width:0; max-width:none; padding:5px 10px; border-bottom:0; }
  .crm75 .crm75-portal-table .crm75-mobile-label { display:block; font-size:13px; font-weight:600; color:#50616b; }
}
