@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
.signout{font-size:10px;color:#68757e;text-decoration:none;margin-left:4px}.signout:hover{color:#167347}
.clickable-row{cursor:pointer;transition:background .15s ease}.clickable-row:hover,.clickable-row:focus{background:#f2f8f4!important;outline:none}.clickable-row.is-selected{background:#e9f4ed!important}.record-drawer-host{position:fixed;inset:0;z-index:1000;pointer-events:none;visibility:hidden}.record-drawer-host.open{pointer-events:auto;visibility:visible}.record-drawer-backdrop{position:absolute;inset:0;background:rgba(23,36,46,.32);opacity:0;transition:opacity .2s}.record-drawer-host.open .record-drawer-backdrop{opacity:1}.record-drawer{position:absolute;right:0;top:0;height:100%;width:min(440px,92vw);background:#fff;box-shadow:-12px 0 40px rgba(23,36,46,.16);transform:translateX(100%);transition:transform .24s ease;overflow-y:auto}.record-drawer-host.open .record-drawer{transform:translateX(0)}.record-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px;border-bottom:1px solid #e5eaed;position:sticky;top:0;background:#fff;z-index:1}.record-drawer-head span{font-size:9px;letter-spacing:.12em;color:#8b959d}.record-drawer-head h2{margin:4px 0 0;font-size:19px}.drawer-close{border:1px solid #dfe4e7;background:#fff;border-radius:7px;width:34px;height:34px;font-size:21px;color:#64717b}.record-drawer-body{padding:22px 24px}.drawer-context{font-size:11px;color:#167347;font-weight:600;margin:0 0 18px}.drawer-field{padding:11px 0;border-bottom:1px solid #edf0f2}.drawer-field label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#8a949d;margin-bottom:5px}.drawer-field div{font-size:12px;color:#26343e;white-space:pre-line}.drawer-actions{margin-top:20px;padding-top:16px;border-top:1px solid #edf0f2}.drawer-actions .btn-primary,.drawer-actions .btn-outline{width:100%}
.grid-tools{display:flex;align-items:center;gap:10px;padding:10px 15px;border-top:1px solid #edf0f2;background:#fbfcfd}.grid-search{min-width:220px;flex:1}.grid-count{font-size:10px;color:#7d8891;white-space:nowrap}.grid-pager{display:flex;align-items:center;gap:8px}.grid-pager .btn-outline{height:30px;padding:0 10px}.grid-pager span{font-size:10px;color:#66727c;white-space:nowrap}.grid-pager button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:650px){.grid-tools{flex-wrap:wrap}.grid-search{width:100%}.grid-pager{margin-left:auto}}
.form-panel{margin-bottom:18px;border-top:3px solid #167347}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.field label{display:block;font-size:9px;color:#7b8790;text-transform:uppercase;font-weight:600;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;height:38px;border:1px solid #dce2e6;border-radius:7px;padding:0 10px;background:#fff;font-size:11px}.field textarea{height:76px;padding-top:9px}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.demo-actions{flex-wrap:wrap;justify-content:flex-start}.alert-success{padding:11px 14px;border-radius:7px;background:#e7f4ec;color:#176b43;font-size:11px;margin-bottom:14px}.alert-error{padding:11px 14px;border-radius:7px;background:#fdeeee;color:#a33b3b;font-size:11px;margin-bottom:14px}.alert-error .rule-list{margin:0;padding-left:18px}.alert-error .rule-list li+li{margin-top:4px}.field.invalid label{color:#a33b3b}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:#b34b4b;background:#fff6f6}.apply-consent.invalid{border-color:#b34b4b;background:#fff6f6}.invalid-card{border-color:#b34b4b}.apply-step-actions{margin:0 0 18px}.tabs{display:flex;gap:4px;border-bottom:1px solid #dfe4e7;margin-bottom:18px}.tab{border:0;background:transparent;padding:10px 14px;font-size:11px;color:#74808a;border-bottom:2px solid transparent}.tab.active{color:#167347;border-color:#167347;font-weight:600}.journal-leg{display:grid;grid-template-columns:1fr 1.6fr 1fr 1fr 32px;gap:8px;margin-bottom:8px}.journal-total{display:flex;justify-content:flex-end;gap:40px;font-size:11px;padding:12px;background:#f7f9fa;border-radius:7px}.danger-link{border:0;background:transparent;color:#bc4e4e}.statement-preview{background:#fff;padding:30px;border:1px solid #dfe4e7;border-radius:8px}.statement-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #edf0f2;font-size:11px}.statement-row.total{font-weight:700;border-top:2px solid #34444f}@media(max-width:900px){.form-grid{grid-template-columns:repeat(2,1fr)}}
:root{--ink:#17242e;--muted:#74808a;--green:#167347;--line:#e3e8eb;--bg:#f5f7f9}*{box-sizing:border-box}html,body{font-family:Inter,Arial,sans-serif;color:var(--ink);margin:0;background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.eyebrow{color:#8d979f;font-size:11px;margin-bottom:4px}.card-head .head-filters{display:flex;gap:8px;align-items:center}
.card-head .head-filters .filter{height:32px;font-size:11px;min-width:140px;margin:0}
.page-head h1.title-with-badge{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.page-head h1 .badge{font-size:11px;letter-spacing:0;font-weight:600}.page-head p{font-size:12px;color:var(--muted);margin:6px 0 0}.head-actions{display:flex;align-items:center;gap:9px}.btn-outline,.btn-primary,.btn-soft,.btn-danger{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 16px;border-radius:7px;font-size:12px;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;vertical-align:middle}.btn-outline{background:#fff;color:#41505b;border:1px solid #dbe1e5}.btn-primary{background:#167347;color:#fff;border:1px solid #167347}.btn-soft{background:#e9f4ed;color:#176b43;border:0}.btn-danger{background:#b34b4b;color:#fff;border:1px solid #b34b4b}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric,.card{background:#fff;border:1px solid var(--line);border-radius:10px}.metric{padding:18px 20px}.metric-top{display:flex;justify-content:space-between;color:#65717b;font-size:11px}.metric-icon{width:28px;height:28px;border-radius:7px;background:#edf6f1;color:#1b784d;display:grid;place-items:center;font-size:15px}.metric-value{font-size:22px;font-weight:650;margin:12px 0 7px;letter-spacing:-.03em}.metric-sub{font-size:10px;color:#87919a}.up{color:#16804d;font-weight:600}.down{color:#c65353;font-weight:600}.dashboard-grid{display:grid;grid-template-columns:1.75fr 1fr;gap:16px;margin-bottom:16px}.card{padding:19px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.card-head h2{font-size:13px;margin:0;font-weight:650}.card-head span,.card-head a:not(.btn-outline):not(.btn-primary):not(.btn-soft){font-size:10px;color:#7d8891;text-decoration:none}.chart{height:190px;display:flex;align-items:flex-end;gap:9px;padding:24px 8px 0;border-bottom:1px solid #e3e7ea;background:repeating-linear-gradient(to bottom,#fff 0,#fff 37px,#eef1f3 38px)}.bar-group{height:100%;flex:1;display:flex;align-items:flex-end;gap:3px;position:relative}.bar{flex:1;background:#1e7a50;border-radius:3px 3px 0 0;min-height:6px}.bar.alt{background:#c5d8cc}.bar-group label{position:absolute;bottom:-20px;width:100%;text-align:center;font-size:9px;color:#89939c}.legend{display:flex;gap:18px;margin-top:28px;font-size:9px;color:#79848e}.legend i{display:inline-block;width:7px;height:7px;border-radius:2px;background:#1e7a50;margin-right:5px}.legend span+span i{background:#c5d8cc}.position-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #edf0f2}.position-row:last-child{border:0}.flag{width:26px;height:26px;border-radius:50%;background:#edf2f4;display:grid;place-items:center;font-size:9px;font-weight:700}.position-row strong{font-size:11px;display:block}.position-row small{font-size:9px;color:#8b959d}.position-value{text-align:right}.position-value strong{font-size:11px}.position-value small{display:block}.lower-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.table-card{padding:0}.table-card .card-head{padding:18px 19px 0}.data-table{width:100%;border-collapse:collapse}.data-table th{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#8b959e;text-align:left;background:#f8fafb;padding:10px 15px;border-top:1px solid #edf0f2;border-bottom:1px solid #edf0f2}.data-table td{padding:12px 15px;border-bottom:1px solid #edf0f2;font-size:10px}.data-table tr:last-child td{border:0}.name-cell{display:flex;align-items:center;gap:9px}.mini-avatar{width:28px;height:28px;border-radius:50%;background:#edf3f0;color:#24714c;display:grid;place-items:center;font-size:9px;font-weight:700}.name-cell strong{font-size:10px;display:block}.name-cell small{font-size:9px;color:#8c969e}.badge{display:inline-block;padding:4px 7px;border-radius:10px;font-size:8px;font-weight:600}.badge.green{background:#e7f4ec;color:#1c754b}.badge.amber{background:#fff4dc;color:#9a6816}.badge.red{background:#fdeaea;color:#b34b4b}.tasks .task{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid #edf0f2}.task:last-child{border:0}.task-icon{width:28px;height:28px;border-radius:7px;background:#edf5f0;color:#26764f;display:grid;place-items:center}.task-copy{flex:1}.task-copy strong{font-size:10px;display:block}.task-copy small{font-size:9px;color:#8c969e}.task time{font-size:9px;color:#8c969e}.toolbar{display:flex;gap:8px;margin-bottom:16px}.filter{height:36px;border:1px solid #dfe4e7;border-radius:7px;background:white;padding:0 12px;font-size:11px;color:#59656f}.search-box{flex:1}.workflow{display:flex;align-items:center;margin:18px 0 22px}.step{display:flex;align-items:center;gap:7px;font-size:10px;color:#8d979f;white-space:nowrap}.step b{width:23px;height:23px;border:1px solid #ccd4d9;border-radius:50%;display:grid;place-items:center}.step.done{color:#177047}.step.done b{background:#177047;color:#fff;border-color:#177047}.step.active{color:#17242e;font-weight:600}.step.active b{border-color:#177047;color:#177047}.connector{height:1px;background:#dfe4e7;flex:1;margin:0 8px}.split{display:grid;grid-template-columns:1fr 340px;gap:16px}.split.cob-split{grid-template-columns:minmax(240px,300px) minmax(0,1fr)}.metrics.cob-metrics{grid-template-columns:minmax(240px,300px) repeat(3,minmax(0,1fr));gap:16px}.info-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.info-item label{display:block;font-size:9px;color:#8a949d;text-transform:uppercase;margin-bottom:5px}.info-item strong{font-size:11px}.section-title{font-size:12px;font-weight:650;margin:0 0 14px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick{border:1px solid #e2e7ea;background:#fff;border-radius:8px;padding:14px;text-decoration:none;color:#27343e;font-size:11px}.quick span{display:block;color:#198056;font-size:18px;margin-bottom:8px}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.lower-grid,.split{grid-template-columns:1fr}.split.cob-split,.metrics.cob-metrics{grid-template-columns:1fr}}@media(max-width:650px){.metrics{grid-template-columns:1fr}.page-head{gap:15px}.head-actions .btn-outline{display:none}.info-list{grid-template-columns:1fr 1fr}.workflow{overflow:auto}.step span{display:none}}

button.btn-outline,
button.btn-primary,
button.btn-soft,
button.btn-danger {
    appearance: none;
    -webkit-appearance: none;
}

/* Cloud Identity, validation, and Bootstrap compatibility */
.valid.modified:not([type=checkbox]) { outline: 1px solid #26b050; }
.invalid { outline: 1px solid #e50000; }
.validation-message, .text-danger { color: #bc4e4e; }
.blazor-error-boundary {
    background: #b32121;
    padding: 1rem 1rem 1rem 1.5rem;
    color: white;
    border-radius: 8px;
}
.cursor-default { cursor: default; }
button.signout {
    border: 0;
    background: transparent;
    font: inherit;
    font-size: 10px;
    color: #68757e;
    text-decoration: none;
    margin-left: 4px;
}
button.signout:hover { color: #167347; }

.alert { padding: 11px 14px; border-radius: 7px; font-size: 11px; margin-bottom: 14px; }
.alert-danger { background: #fdeaea; color: #b34b4b; }
.alert-info { background: #edf3f0; color: #41505b; }
.alert-success { background: #e7f4ec; color: #176b43; }

.btn.btn-primary, .btn-primary,
.btn.btn-danger, .btn-danger,
.btn.btn-outline, .btn-outline,
.btn.btn-soft, .btn-soft,
.quick, .danger-link, .drawer-close, .tab, .login-submit {
    transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.btn.btn-primary, .btn-primary {
    background: #167347;
    color: #fff;
    border: 1px solid #167347;
}
.btn.btn-primary:hover:not(:disabled), .btn-primary:hover:not(:disabled) {
    background: #125f3b;
    color: #fff;
    border-color: #125f3b;
}
.btn.btn-danger, .btn-danger {
    background: #b34b4b;
    color: #fff;
    border: 1px solid #b34b4b;
}
.btn.btn-danger:hover:not(:disabled), .btn-danger:hover:not(:disabled) {
    background: #9a3d3d;
    color: #fff;
    border-color: #9a3d3d;
}
.btn.btn-outline:hover:not(:disabled), .btn-outline:hover:not(:disabled),
.btn.btn-outline-primary:hover:not(:disabled), .btn.btn-outline-success:hover:not(:disabled),
.btn.btn-outline-info:hover:not(:disabled), .btn.btn-outline-secondary:hover:not(:disabled) {
    background: #f3f8f5;
    color: #167347;
    border-color: #167347;
}
.btn.btn-soft:hover:not(:disabled), .btn-soft:hover:not(:disabled) {
    background: #d5eadc;
    color: #125f3b;
}
.quick:hover:not(:disabled) {
    background: #f7fbf8;
    border-color: #167347;
    color: #125f3b;
}
.danger-link:hover:not(:disabled) { color: #9a3d3d; }
.drawer-close:hover:not(:disabled) { background: #f4f7f8; color: #17242e; border-color: #c5ced4; }
.tab:hover:not(:disabled):not(.active) { color: #167347; }
.btn.btn-primary:disabled, .btn-primary:disabled,
.btn.btn-danger:disabled, .btn-danger:disabled,
.btn.btn-outline:disabled, .btn-outline:disabled,
.btn.btn-soft:disabled, .btn-soft:disabled,
.btn.btn-outline-primary:disabled, .btn.btn-outline-success:disabled,
.btn.btn-outline-info:disabled, .btn.btn-outline-secondary:disabled,
.quick:disabled, .danger-link:disabled, .drawer-close:disabled, .tab:disabled, .login-submit:disabled,
button:disabled {
    cursor: not-allowed;
}
.btn.btn-primary:disabled, .btn-primary:disabled, .login-submit:disabled {
    background: #d5ddd8;
    color: #8b969e;
    border-color: #d5ddd8;
}
.btn.btn-danger:disabled, .btn-danger:disabled {
    background: #ead6d6;
    color: #a89090;
    border-color: #ead6d6;
}
.btn.btn-outline:disabled, .btn-outline:disabled,
.btn.btn-outline-primary:disabled, .btn.btn-outline-success:disabled,
.btn.btn-outline-info:disabled, .btn.btn-outline-secondary:disabled {
    background: #f6f8f9;
    color: #aeb6bc;
    border-color: #e6ebed;
}
.btn.btn-soft:disabled, .btn-soft:disabled {
    background: #f1f3f4;
    color: #aeb6bc;
}
.quick:disabled, .drawer-close:disabled {
    background: #f6f8f9;
    color: #aeb6bc;
    border-color: #e6ebed;
}
.danger-link:disabled, .tab:disabled { color: #aeb6bc; }
.btn.btn-outline-primary, .btn.btn-outline-success, .btn.btn-outline-info, .btn.btn-outline-secondary {
    background: #fff;
    color: #41505b;
    border: 1px solid #dbe1e5;
}
.nav-pills .nav-link { color: #515c66; border-radius: 7px; }
.nav-pills .nav-link.active { background-color: #eaf5ee; color: #176b43; font-weight: 600; }

.form-control, .form-select {
    border: 1px solid #dce2e6;
    border-radius: 7px;
    font-size: 12px;
}
.form-control:focus, .form-select:focus {
    border-color: #167347;
    box-shadow: 0 0 0 3px rgba(22, 115, 71, 0.12);
}
.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}
.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}
.darker-border-checkbox.form-check-input { border-color: #929292; }
.form-check-input:checked { background-color: #167347; border-color: #167347; }

.loading-state { text-align: center; padding: 48px 0; color: #74808a; font-size: 12px; }
.spinner-border { color: #167347; }

.manage-split { display: grid; grid-template-columns: 220px 1fr; gap: 24px; }
.manage-nav { list-style: none; padding: 0; margin: 0; }
.manage-nav .nav-item { margin: 2px 0; }
.manage-nav .nav-link {
    display: block;
    padding: 10px 12px;
    border-radius: 7px;
    color: #515c66;
    text-decoration: none;
    font-size: 13px;
}
.manage-nav .nav-link:hover { background: #f2f7f4; color: #185f3e; }
.manage-nav .nav-link.active { background: #eaf5ee; color: #176b43; font-weight: 600; }

.era-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1050;
    background: rgba(23, 36, 46, 0.32);
    display: grid;
    place-items: center;
    padding: 24px;
}
.era-modal {
    background: #fff;
    border-radius: 12px;
    width: min(720px, 100%);
    max-height: 90vh;
    overflow: auto;
    box-shadow: 0 22px 60px rgba(23, 36, 46, 0.18);
}
.era-modal-lg { width: min(860px, 100%); }
.era-modal-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 22px 24px;
    border-bottom: 1px solid #e5eaed;
}
.era-modal-head h2 { margin: 4px 0 0; font-size: 19px; }
.era-modal-head span { font-size: 9px; letter-spacing: .12em; color: #8b959d; }
.era-modal-body { padding: 22px 24px; }
.era-modal-actions { display: flex; justify-content: flex-end; gap: 8px; padding: 16px 24px 22px; border-top: 1px solid #edf0f2; }

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}
#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
.login-page { min-height: 100vh; display: grid; place-items: center; background: linear-gradient(135deg, #f8fafc, #e9f1f5); padding: 24px; }
.login-shell {
    width: min(940px, 92vw);
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    background: #fff;
    border: 1px solid #dfe6eb;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 22px 60px #1720331c;
}
.login-brand { padding: 64px; background: #123c46; color: #fff; display: flex; flex-direction: column; justify-content: space-between; }
.login-brand .brand-mark { font-size: 14px; font-weight: 800; letter-spacing: .12em; background: none; padding: 0; color: inherit; }
.login-brand h1 { font-size: 42px; margin: 14px 0 12px; color: #fff; }
.login-brand p { color: #cce0e4; line-height: 1.6; }
.login-form { padding: 64px 52px; }
.login-form h2 { font-size: 28px; margin: 0 0 8px; }
.login-form .sub { color: #677384; margin: 0 0 24px; }
.login-form label { display: block; font-size: 13px; font-weight: 700; margin: 16px 0 7px; }
.login-form .form-control { height: 44px; }
.login-form .login-submit {
    width: 100%;
    margin-top: 24px;
    padding: 13px;
    height: auto;
    border: 0;
    border-radius: 8px;
    background: #176477;
    color: #fff;
    font-weight: 700;
}
.login-form .login-submit:hover:not(:disabled) { background: #125463; color: #fff; }
.login-form .login-submit:disabled { background: #d5ddd8; color: #8b969e; cursor: not-allowed; }
.login-page-inner:not(:has(.login-shell)) {
    width: min(560px, 92vw);
    background: #fff;
    border: 1px solid #dfe6eb;
    border-radius: 18px;
    padding: 40px 36px;
    box-shadow: 0 22px 60px #1720331c;
}
.login-page-inner:has(.login-shell) { width: min(940px, 92vw); }
.data-table .form-control, .data-table .form-select { font-size: 11px; height: 32px; }
.data-table .btn-sm { height: 30px; padding: 0 8px; font-size: 11px; }
.login-links { margin-top: 18px; font-size: 13px; }
.login-links a { color: #176477; text-decoration: none; }
.login-links a:hover { text-decoration: underline; }
.login-alt { margin-top: 22px; padding-top: 18px; border-top: 1px solid #edf0f2; }
.permission-list { max-height: 200px; overflow-y: auto; }
.role-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 1100px) { .role-grid { grid-template-columns: repeat(2, 1fr); } .manage-split { grid-template-columns: 1fr; } }
@media (max-width: 720px) {
    .login-shell { grid-template-columns: 1fr; }
    .login-brand { padding: 32px; }
    .login-form { padding: 38px 30px; }
    .role-grid { grid-template-columns: 1fr; }
}

.form-section-title{grid-column:1/-1;font-size:12px;font-weight:650;color:#167347;margin:10px 0 0;padding-top:10px;border-top:1px solid #edf0f2}
.fee-term{grid-column:1/-1;display:grid;grid-template-columns:minmax(148px,1.15fr) repeat(6,minmax(72px,1fr));gap:10px;align-items:end}
.fee-term-enable{display:flex;align-items:center;gap:8px;min-height:38px;font-size:12px;font-weight:600;color:#41505b}
.fee-term-enable input{width:14px;height:14px;min-width:14px;accent-color:#167347}
@media (max-width:1100px){.fee-term{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-term-enable{grid-column:1/-1}}
.form-note{grid-column:1/-1;margin:0;color:#8a949d;font-size:12px}
.form-grid>.form-section-title:first-child,.form-grid>.field+.form-section-title:nth-child(2){border-top:0;margin-top:0;padding-top:0}
.customer-split{align-items:start}
.customer-related{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}
.address-pair{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.address-pair.address-single{grid-template-columns:1fr}
.address-pair .card{margin:0;padding:14px 16px}
.field input:read-only{background:#f4f6f7;color:#4e5a63}
.field input[type=file]{height:auto;min-height:38px;padding:6px 8px}
input[type=checkbox]:not(.form-check-input),
input[type=radio]:not(.form-check-input),
.field input[type=checkbox],
.field input[type=radio]{
    width:14px;height:14px;min-width:14px;min-height:14px;padding:0;margin:0;
    flex-shrink:0;accent-color:#167347;vertical-align:middle;border-radius:3px
}
.field label:has(> input[type=checkbox]):not(.position-row),
.field label:has(> input[type=radio]):not(.position-row){
    display:flex;align-items:center;gap:8px;text-transform:none;font-size:12px;
    letter-spacing:0;color:#41505b;font-weight:600;margin-bottom:0;line-height:1.3;min-height:38px
}
.field .position-row input[type=checkbox],
.field .position-row input[type=radio]{width:14px;height:14px;margin:0;align-self:center}
.apply-consent input[type=checkbox]{width:14px;height:14px;margin:2px 0 0}
.data-table select{width:100%;height:32px;border:1px solid #dce2e6;border-radius:7px;padding:0 8px;background:#fff;font-size:11px}
.file-row{display:flex;flex-direction:column;gap:6px}
.file-row a{font-size:12px;color:#167347;font-weight:600}
.file-row small{font-size:10px;color:#7b8790}
.info-group{margin-bottom:16px}
.info-group h2,.info-group h3{margin-bottom:10px}
.info-list .info-item{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #edf0f2;font-size:12px}
.info-list .info-item label{color:#8a949d;font-size:9px;text-transform:uppercase;letter-spacing:.04em;margin:0}
.info-list .info-item strong{font-weight:600;text-align:right}
.info-list .info-item a{font-size:12px;color:#167347;font-weight:600;text-align:right}
.statement-row.group{font-weight:700;color:#167347;border-bottom:1px solid #dfe4e7;padding-top:16px}
.statement-row.section{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#7b8790;font-weight:600;border-bottom:0;padding-top:12px}
.statement-row.subtotal{font-weight:600;color:#41505b}
.statement-row small{display:block;color:#87919a;font-size:10px;font-weight:500;letter-spacing:0;text-transform:none}
@media(max-width:900px){.address-pair{grid-template-columns:1fr}}

.metrics.loan-book{grid-template-columns:repeat(2,minmax(0,1fr))}
.metrics.loan-book.with-risk{grid-template-columns:repeat(4,minmax(0,1fr))}
.apply-quote-bar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}
.apply-quote-bar.status{grid-template-columns:repeat(4,minmax(0,1fr))}
.apply-quote-bar .metric{padding:14px 12px;min-width:0}
.apply-quote-bar .metric-top{font-size:11px}
.apply-quote-bar .metric strong{display:block;margin-top:6px;font-size:16px;line-height:1.25;overflow-wrap:anywhere}
.apply-consent{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;background:#fff}
.apply-consent input{margin-top:3px}
.apply-consent span{font-size:12px;line-height:1.45}
.apply-assessment{display:grid;gap:8px;margin:8px 0 16px;padding:14px 16px;background:#f4faf6;border:1px solid #dceee3;border-radius:10px}
.apply-assessment span{display:flex;justify-content:space-between;font-size:12px;color:#41505b}
.apply-assessment .surplus{font-weight:700;color:#167347;border-top:1px solid #dceee3;padding-top:8px;margin-top:4px}
.apply-assessment .surplus.short{color:#a33b3b}
.apply-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.apply-summary-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px}
.apply-summary-card h3{margin:0 0 12px;font-size:13px;color:#167347}
.apply-summary-card .apply-summary-fields{grid-template-columns:1fr 1fr;gap:10px 14px;margin:0 0 12px}
.apply-summary-card.span-all{grid-column:1 / -1}
.loan-pipeline{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.35fr);gap:16px;align-items:start;margin-bottom:16px}
.loan-pipeline-file,.loan-pipeline-side{min-width:0}
.loan-pipeline-file .loan-dossier{grid-template-columns:minmax(0,1fr)}
.loan-pipeline-file .apply-summary-fields{grid-template-columns:minmax(0,1fr)}
.loan-pipeline-file .span-2{grid-column:1 / -1}
.loan-pipeline-file .info-item strong,.loan-pipeline-file .info-item a{min-width:0;overflow-wrap:anywhere}
.loan-pipeline-side .form-actions{flex-wrap:wrap}
.loan-pipeline-side .card,.loan-pipeline-side .form-panel{min-width:0;max-width:100%}
.loan-position{padding:0}
.loan-gl-table{margin:0}
.loan-gl-table th.num,.loan-gl-table td.num{width:9rem;white-space:nowrap}
.loan-gl-table th.gl,.loan-gl-table td.gl{width:5.25rem;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.loan-gl-table td.gl a{font-size:11px;color:#167347;font-weight:600;text-decoration:none}
.loan-gl-table tr.total td{font-weight:700;border-top:2px solid #34444f;border-bottom:0}
.loan-postings-table th.num,.loan-postings-table td.num{width:7.75rem;white-space:nowrap}
.data-table th.num,.data-table td.num{text-align:right;font-variant-numeric:tabular-nums}
.loan-origination-toggle{width:100%;border:0;background:transparent;cursor:pointer;text-align:left}
@media(max-width:1100px){
    .loan-pipeline{grid-template-columns:1fr}
}
.apply-summary-card button{margin-top:4px}
.apply-total{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#167347;color:#fff;border-radius:10px;margin-bottom:16px}
.apply-total span{font-size:12px;opacity:.9}
.apply-total b{font-size:20px}
.apply-success{text-align:center;padding:28px 16px}
.apply-success .mark{width:52px;height:52px;border-radius:50%;background:#e7f4ec;color:#167347;display:grid;place-items:center;margin:0 auto 12px;font-size:22px;font-weight:700}
.apply-upload{display:flex;flex-direction:column;gap:4px}
.consent-optional{color:#7b8790}
.apply-other{border:1px dashed #dce2e6;border-radius:8px;padding:12px;margin-bottom:10px}
.workflow.application-steps{margin-bottom:18px;overflow-x:auto}
@media(max-width:1100px){
    .metrics.loan-book.with-risk{grid-template-columns:repeat(2,minmax(0,1fr))}
    .apply-quote-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
    .apply-quote-bar.status{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
    .apply-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
    .apply-quote-bar,.apply-quote-bar.status,.apply-summary{grid-template-columns:1fr}
}
.record-list{display:flex;flex-direction:column;margin:0 0 14px}
.record-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf0f2}
.record-row:last-child{border-bottom:0}
.record-copy{min-width:0}
.record-copy label{display:block;margin:0 0 3px;color:#8a949d;font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.record-copy strong{display:block;font-size:12px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.record-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:#41505b}
.file-row .btn-danger,.file-row .btn-outline{align-self:flex-start}
.relationship-item>.btn-danger{margin-top:8px}
.journal-leg .btn-danger.btn-icon,.btn-danger.btn-icon{width:32px;height:32px;padding:0;font-size:14px}
.card>p:not([class]){font-size:12px;line-height:1.45;color:#41505b}
.audit-json{margin:8px 0 0;padding:12px 14px;background:#f6f8f9;border:1px solid #edf0f2;border-radius:8px;max-height:480px;overflow:auto}
.audit-json pre,.audit-json code{margin:0;padding:0;background:none;border:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45;white-space:pre-wrap;color:#243039}
small.external-ref{display:block}
.relationship-parties small.external-ref{flex:1 0 100%;color:#8a949d;font-size:11px}
.content select,
.form-select{
  appearance:none;-webkit-appearance:none;
  font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:400;line-height:1.2;color:#17242e;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2374808a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;background-size:12px 8px;
  border:1px solid #dce2e6;border-radius:7px;height:38px;padding:0 32px 0 10px;box-shadow:none
}
.content select:focus,
.form-select:focus{outline:none;border-color:#167347;box-shadow:0 0 0 3px rgba(22,115,71,.12)}
.content select:disabled,
.form-select:disabled{background-color:#f4f6f7;color:#4e5a63;cursor:not-allowed}
.content select.filter,
.content .journal-leg select{height:36px}
.content .card-head .head-filters select,
.content .data-table select,
.form-select.form-select-sm{height:32px;font-size:11px}
.content .card-head .head-filters select{min-width:140px;margin:0}
