/* Distinct working surfaces: task desk and account ledger. */
.legal-offer.offer-dispatch { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-bottom:16px; }
.legal-offer.offer-dispatch .dispatch-preview { margin-block:auto; }
#demo-dialog[data-demo=asuntos],#demo-dialog[data-demo=honorarios] { width:min(1320px,calc(100% - 32px)); }
#demo-dialog[data-demo=asuntos] { background:#f4f7fc; border-color:#c8d6ea; }
#demo-dialog[data-demo=asuntos] .dialog-heading { margin-bottom:16px; }
#demo-dialog[data-demo=asuntos] .dialog-heading h2 { color:#244c92; }
#demo-dialog[data-demo=asuntos] .button-dark { background:#254fe5; border-color:#254fe5; color:white; }
#demo-dialog[data-demo=asuntos] .workspace-editor { background:#e7efff; }
.matter-desk>.workspace-toolbar { margin-top:0; }
.matter-counts { display:flex; gap:24px; padding-block:6px 18px; flex-wrap:wrap; }
.matter-counts>div { display:flex; gap:8px; align-items:center; font-size:13px; }
.matter-counts span { color:#506780; }
.matter-counts strong { order:-1; display:grid; place-items:center; min-width:28px; height:28px; border-radius:50%; background:#e2ebfa; font-size:14px; color:#244c92; }
.matter-switcher { display:flex; gap:12px; overflow-x:auto; padding:5px 5px 18px; }
.matter-switcher .record-choice { flex:0 0 285px; padding:18px; border:1px solid #cbd7e8; border-radius:10px; margin:0; background:white; }
.matter-switcher .record-choice.selected { border-color:#254fe5; box-shadow:inset 0 3px #254fe5; background:#edf3ff; }
.matter-switcher .record-choice span { line-height:1.6; }
.matter-detail { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:24px; align-items:start; }
.matter-detail>.matter-tasks { background:white; border:1px solid #d9e2ef; border-radius:12px; padding:26px; }
.matter-tasks>.workspace-actions { margin-block:14px 24px; }
.matter-task-group { font-size:12px; color:#59718c; margin-top:20px; padding-bottom:9px; border-bottom:1px solid #d9e2ef; }
.matter-tasks>.workspace-row { align-items:flex-start; padding-block:20px; gap:14px; }
.matter-tasks .workspace-row>.workspace-actions { gap:8px; }
.matter-tasks .workspace-row .row-copy { flex-basis:230px; }
.matter-tasks .workspace-row .text-button:first-child { text-decoration:none; background:#edf3ff; padding-inline:12px; border-radius:5px; }
.matter-context { min-width:0; }
.matter-context .workspace-section { padding:20px 0; }
.matter-context .workspace-section:first-child { padding-top:12px; }
.matter-context .workspace-section h3 { font-size:18px; line-height:1.4; }
.matter-context .record-notes { font-size:14px; }
.matter-context .workload-strip { display:flex; flex-direction:column; align-items:flex-start; gap:8px; font-size:13px; }
.matter-history { margin-top:18px; font-size:14px; }
.matter-history summary { cursor:pointer; font-weight:700; margin-bottom:16px; }
#demo-dialog[data-demo=honorarios] { --line:#d8e3dd; background:#fff; border-color:#bbcfc4; }
#demo-dialog[data-demo=honorarios] .dialog-heading { border-bottom:1px solid #d8e3dd; padding-bottom:22px; }
#demo-dialog[data-demo=honorarios] .dialog-heading h2 { color:#205d48; }
#demo-dialog[data-demo=honorarios] .button-dark { background:#205d48; border-color:#205d48; color:white; }
#demo-dialog[data-demo=honorarios] .text-button { color:#205d48; }
#demo-dialog[data-demo=honorarios] .workspace-editor { background:#edf5f0; }
.finance-overview { display:grid; grid-template-columns:1.2fr 1.2fr .8fr; gap:1px; background:#d5e3db; border:1px solid #d5e3db; border-radius:10px; overflow:hidden; }
.finance-overview>div { padding:20px 24px; background:#f1f7f4; display:flex; flex-direction:column; gap:8px; min-width:0; }
.finance-overview>div:nth-child(2) { background:#205d48; color:white; }
.finance-overview span { font-size:13px; }
.finance-overview strong { font-size:28px; letter-spacing:-.035em; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.finance-accounts { overflow-x:auto; margin-block:20px 26px; }
.account-table,.payment-ledger { border-collapse:collapse; width:100%; font-size:14px; text-align:left; }
.account-table caption { text-align:left; font-size:18px; font-weight:750; padding-block:0 14px; }
.account-table th,.payment-ledger th { font-size:12px; font-weight:650; color:#516d5e; background:#f4f7f5; padding:12px; border-bottom:1px solid #d8e3dd; }
.account-table td,.payment-ledger td { padding:15px 12px; border-bottom:1px solid #d8e3dd; }
.account-table td:first-child { min-width:205px; }
.account-table td strong,.payment-ledger td strong { display:block; font-size:14px; font-weight:650; }
.account-table td span:not(.workspace-badge),.payment-ledger td span { display:block; font-size:12px; color:#607269; margin-top:5px; }
.account-amount { white-space:nowrap; font-variant-numeric:tabular-nums; }
.account-selected { background:#eef7f1; }
.account-selected td:first-child { box-shadow:inset 3px 0 #287858; }
.account-table .text-button { white-space:nowrap; font-size:12px; }
.account-table .workspace-badge { white-space:nowrap; font-size:12px; }
.finance-detail { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:28px; align-items:start; }
.finance-activity { min-width:0; }
.finance-payments { border:0; padding:0; }
.finance-payments>.workspace-actions { margin-block:16px; }
.ledger-scroll { overflow-x:auto; }
.payment-ledger .workspace-actions { flex-wrap:nowrap; }
.payment-ledger td:first-child { min-width:130px; }
.finance-statement { padding:24px!important; background:#f1f7f4; border:1px solid #d5e3db; border-radius:10px; }
.finance-statement .record-notes { font-size:14px; }
.finance-balance-label { margin-top:24px; font-size:13px; color:#446354; }
.finance-balance { display:block; font-size:36px; font-weight:750; letter-spacing:-.04em; color:#205d48; font-variant-numeric:tabular-nums; margin-block:8px 16px; overflow-wrap:anywhere; }
.finance-statement .money-totals { grid-template-columns:1fr 1fr; border-block:1px solid #d5e3db; margin-block:18px; gap:16px; }
.finance-statement .money-totals strong { font-size:18px; }
.finance-statement .money-totals span { font-size:12px; }
.finance-statement .workspace-actions .button { background:white; font-size:12px; }
.finance-scope { margin-top:24px; border-top:1px solid #d8e3dd; padding-top:18px; }
.finance-scope summary { cursor:pointer; font-size:15px; font-weight:700; color:#205d48; }
.finance-scope>.workspace-section { margin-top:14px; }
@media(max-width:900px) {
 .matter-detail,.finance-detail { grid-template-columns:1fr; }
 .matter-context { padding:0 12px; }
 .finance-statement { grid-row:1; }
 .finance-overview strong { font-size:24px; }
 .finance-overview>div { padding:18px; }
 .legal-offer.offer-dispatch { display:flex; }
}
@media(max-width:560px) {
 #demo-dialog[data-demo=asuntos],#demo-dialog[data-demo=honorarios] { padding:18px; width:calc(100% - 20px); }
 #demo-dialog[data-demo=asuntos] .dialog-heading h2,#demo-dialog[data-demo=honorarios] .dialog-heading h2 { font-size:27px; }
 .matter-counts { gap:12px; }
 .matter-counts>div { font-size:11px; gap:5px; }
 .matter-counts strong { min-width:24px; height:24px; font-size:12px; }
 .matter-switcher .record-choice { flex-basis:260px; }
 .matter-detail>.matter-tasks { padding:18px; }
 .matter-tasks .workspace-row .row-copy { flex-basis:100%; }
 .finance-overview { grid-template-columns:1fr 1fr; }
 .finance-overview>div { padding:16px 12px; }
 .finance-overview>div:last-child { grid-column:1/-1; flex-direction:row; align-items:center; justify-content:space-between; }
 .finance-overview strong { font-size:21px; }
 .finance-overview span { font-size:12px; }
 .finance-balance { font-size:32px; }
 .account-table,.payment-ledger { font-size:13px; }
}
@media(max-width:560px) {
 .account-table thead,.payment-ledger thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .account-table tbody,.payment-ledger tbody { display:block; }
 .account-table tr,.payment-ledger tr { display:grid; grid-template-columns:1fr auto; border-bottom:1px solid #d8e3dd; padding:14px 10px; gap:10px 16px; }
 .account-table td,.payment-ledger td { border:0; padding:0; min-width:0!important; }
 .account-table td:first-child,.payment-ledger td:first-child { grid-column:1/-1; box-shadow:none; }
 .account-table td:nth-child(2),.account-table td:nth-child(3) { display:none; }
 .account-table td:nth-child(4):before { content:'Saldo '; color:#516d5e; font-size:12px; }
 .account-table td:last-child,.payment-ledger td:last-child { grid-column:1/-1; }
 .account-selected { box-shadow:inset 3px 0 #287858; }
 .account-table .text-button { min-height:36px; }
 .payment-ledger td:nth-child(3) { font-weight:700; }
}
