/* RB-A-017 / 036 / 016. Shared Records contract: data stays complete.
   Fixed frames retain their overflow; only lists scroll horizontally. */
body.rb-workspace :is(main,.rv2-split,.rv2-list,.documents-list,.fw-split,.fw-card,.q-main,.q-list-wrap){min-width:0;max-width:100%;box-sizing:border-box}
body.rb-workspace :is(.tw,.table-scroll,.fw-card,.question-list,#sentence-rules){overflow-x:auto;max-width:100%;box-sizing:border-box}
body.rb-workspace :is(td,[role=cell],.fmain,.fname,.question-title,.q-lv-answer,.q-lv-who,.rv2-doc-name,.rv2-kind,.viewer-title,.voucher-status-text,.sidebar-client-name){text-overflow:clip!important;-webkit-line-clamp:unset!important;overflow:visible!important;overflow-wrap:anywhere}
body.rb-workspace :is(.tw,.table-scroll,.fw-card) table{table-layout:auto!important;width:max-content;min-width:100%;max-width:none}
body.rb-workspace :is(td,th){white-space:nowrap}
body.rb-workspace :is(.tw,.table-scroll,.fw-card) :is(td,th):first-child{position:sticky;left:0;z-index:1;background:var(--surface)}
body.rb-workspace :is(.fw-table .fw-title,.fw-table .fw-todo){white-space:normal;min-width:260px;max-width:440px;overflow-wrap:anywhere}
body.rb-workspace #findings-app :is(.fw-party,.fw-client,.fw-items){display:table-cell!important;white-space:nowrap}
body.rb-workspace #findings-app .fw-who{display:block!important;white-space:normal}
body.rb-workspace #findings-app .fw-table td{overflow:visible;white-space:nowrap}
body.rb-workspace #findings-app .fw-table :is(.fw-title,.fw-todo){white-space:normal}
body.rb-workspace :is(.tabs:not(.rb-tabs-v2),.fw-seg:not(.rb-tabs-v2),.fw-chips,.document-status-chips,[data-question-chips]){flex-wrap:nowrap!important;white-space:nowrap;overflow-x:auto!important;max-width:100%;min-width:0}
body.rb-workspace :is(.tabs:not(.rb-tabs-v2),.fw-seg:not(.rb-tabs-v2),.fw-chips,.document-status-chips,[data-question-chips])>*{flex-shrink:0}
body.rb-workspace :is(.rv2-doc-name,.rv2-kind,.documents-heading-row h1,.documents-blocked-note span,.reviewer-batch b,.reviewer-batch p){white-space:normal!important;overflow-wrap:anywhere}
body.rb-workspace .client-picker :is(button,a,span){white-space:normal;overflow-wrap:anywhere;text-overflow:clip;overflow:visible}
/* Documents: date, status, party, amount. Evidence remains in title + panel. */
body.rb-workspace main.ws#documents-app #files-table{table-layout:auto!important;width:100%!important;min-width:100%;max-width:none}
body.rb-workspace main.ws#documents-app #files-table :is(th,td){width:auto!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important;height:34px!important;padding:4px 8px!important;vertical-align:middle;box-sizing:border-box}
body.rb-workspace main.ws#documents-app #files-table [data-column=date]{display:table-cell!important}
body.rb-workspace main.ws#documents-app #files-table .fmain{white-space:normal!important}
body.rb-workspace main.ws#documents-app #files-table .file{max-width:none}
body.rb-workspace main.ws#documents-app #files-table :is(.status-reason,.post-chip,.ledger-chip,.document-bank){display:none!important}
body.rb-workspace main.ws#documents-app #files-table .document-cell{align-items:center}
body.rb-workspace main.ws#documents-app #files-table .ux-checkbox-target{height:28px;min-height:28px;padding:0;align-items:center}
.record-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--off);margin-right:6px}
[data-tab='Needs you'] .record-dot{background:var(--you)}
[data-tab="Posted"] .record-dot,[data-tab="Ready to post"] .record-dot{background:var(--agreed)}
/* Questions use native table sizing for aligned, content-sized columns. */
body .questions-screen.q-split .question-table{display:table!important;table-layout:auto;width:max-content;min-width:100%;max-width:none}
body .questions-screen.q-split .question-table :is(.qhead,.qrow){display:table-row!important;height:36px;min-height:0}
body .questions-screen.q-split .question-table :is(.qhead,.qrow)>*{display:table-cell!important;vertical-align:middle;padding:4px 8px;white-space:nowrap;overflow:visible!important;max-height:none}
body .questions-screen.q-split .question-table .question-title{display:block;white-space:normal!important;min-width:280px;max-width:480px;height:auto;line-height:1.45;overflow:visible!important}
body .questions-screen.q-split .compact-table .question-title{white-space:nowrap!important;max-width:none}
body .questions-screen.q-split .compact-table :is(.qrow,.qhead)>*{height:36px;box-sizing:border-box}
body .questions-screen.q-split .question-table :is(select,.q-lv-answer){width:max-content;max-width:none;white-space:nowrap;overflow:visible}
body .questions-screen.q-split .question-table .qhead>*:first-child,body .questions-screen.q-split .question-table .qrow>*:first-child{position:sticky;left:0;background:var(--surface);z-index:1}
.record-phone-cards{display:none}
.record-sheet{border:0;padding:0;background:var(--surface);color:var(--ink)}
.record-sheet-bar{display:flex;gap:8px;align-items:center;position:sticky;top:0;background:var(--titlebar);color:var(--on-titlebar);padding:8px;z-index:10}
.record-sheet-bar span{flex:1}
.record-sheet-bar button{background:var(--surface);color:var(--ink);border:1px solid var(--line-control);border-radius:var(--radius-control);min-width:44px;min-height:44px}
@media(min-width:641px){
 body.rb-workspace #documents-app .document-gallery{display:block;overflow-x:auto}
 body.rb-workspace #documents-app .document-gallery article{display:flex;align-items:center;gap:8px;white-space:nowrap;min-width:max-content;padding:4px 8px;margin:0;height:36px;box-sizing:border-box}
 body.rb-workspace #documents-app .document-gallery img{height:28px;width:22px;object-fit:contain}
}
@media(max-width:640px){
 body.rv2 #documents-app .rv2-split>.documents-list{display:block!important}
 body.rb-workspace :is(button,.btn,summary,[role=button]){min-height:44px!important;min-width:44px;box-sizing:border-box}
 body.rb-workspace :is(input:not([type=checkbox]):not([type=radio]),textarea,select){font-size:16px!important;min-height:44px}
 body.rb-workspace main.ws{width:auto;min-width:0}
 body.rb-workspace #documents-app :is(#documents-table-view,#documents-gallery-view,#documents-grouped-view),body.rb-workspace #findings-app .fw-card>table{display:none!important}
 .record-phone-cards{display:grid;gap:8px;padding:8px;min-width:0}
 .record-phone-card{border:1px solid var(--line);border-radius:var(--radius-container);padding:12px;background:var(--surface);min-width:0;overflow-wrap:anywhere}
 .record-phone-card button.record-open{display:block;width:100%;text-align:left;white-space:normal;padding:0;background:transparent;color:var(--ink);border:0;font:inherit;overflow-wrap:anywhere}
 .record-phone-card :is(p,h3){margin:4px 0;white-space:normal;overflow-wrap:anywhere;font-size:13px}
 .record-phone-card .record-select{display:none;align-items:center;gap:8px;min-height:44px}
 .record-phone-cards[data-selecting=true] .record-select{display:flex}
 .record-phone-select{display:block;margin:8px;padding:var(--space-2) var(--space-3);border:1px solid var(--line-control);border-radius:var(--radius-control);background:var(--surface);color:var(--machine);font:inherit}
 .record-sheet[open]{display:flex;flex-direction:column;position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;overflow:auto}
 .record-sheet .details-panel{display:block!important;position:static!important;max-height:none!important;width:auto!important;margin:0!important;flex:1;overflow:visible!important}
 body.rb-workspace #findings-app .fw-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.rb-workspace #findings-app .fw-tile b{white-space:normal;overflow-wrap:normal;word-break:normal}
 body.rb-workspace #findings-app .fw-tile:nth-child(3){grid-column:1/-1}
 body .questions-screen.q-split .qcards{display:grid;grid-template-columns:minmax(0,1fr);min-width:0}
 body .questions-screen.q-split .qcard{min-width:0;overflow-wrap:anywhere}
 body .questions-screen.q-split .qcard :is(.question-answers,.choices){display:flex;flex-direction:column;gap:8px;max-width:100%;height:auto}
 body .questions-screen.q-split .qcard :is(button,[data-choice]){height:auto!important;white-space:normal!important;overflow-wrap:anywhere;max-width:100%}
 body .questions-screen.q-split .qcard .q-row-answers select{display:none}
}
@media(min-width:641px){.record-phone-select{display:none}}

/* Editable chart values retain their full intrinsic text width. */
body.rb-workspace #chart-accounts input:not([type=checkbox]){width:auto;max-width:none;min-width:12ch;field-sizing:content}

body.rb-workspace .record-client-picker{min-width:0;flex:1;position:relative;font-size:12px}
body.rb-workspace .record-client-picker summary{display:block;white-space:normal;overflow-wrap:anywhere;cursor:pointer;padding:6px 0}
body.rb-workspace .record-client-picker>div{position:absolute;left:0;top:100%;z-index:95;width:min(320px,calc(100vw - 48px));max-height:65vh;overflow:auto;padding:8px;border:1px solid var(--line-control);border-radius:var(--radius-control);background:var(--surface)}
body.rb-workspace .record-client-picker button{display:block;width:100%;height:auto;min-height:32px;white-space:normal;overflow-wrap:anywhere;text-align:left;padding:8px;border:0;background:var(--surface);color:var(--ink);font:inherit}
body.rb-workspace .record-client-picker button[aria-current=true]{background:var(--machine-soft);color:var(--machine)}
body.rb-workspace .record-client-picker [hidden]{display:none!important}
@media(max-width:640px){body.rb-workspace .record-client-picker button{min-height:44px}}

.record-sheet .rv2-pbar{display:none!important}
/* Legacy lists and statement detail grids retain all columns too. */
body.rb-workspace #findings-app .f-list-table :is(th,td):not([hidden]),body.rb-workspace .fw-bq-lines .fw-bq-r{display:table-cell!important}
body.rb-workspace .fw-bq-wrap{overflow:auto}
body.rb-workspace .fw-bq-lines{table-layout:auto;width:max-content;min-width:100%}
body.rb-workspace .cx-blurb{white-space:normal!important;overflow-wrap:anywhere}
body.rb-workspace .fs-rows{display:grid;grid-template-columns:var(--fs-cols);--fs-cols:minmax(max-content,1fr) repeat(5,max-content);width:max-content;min-width:100%;max-width:none}
body.rb-workspace .fs-rows.fs-aged{--fs-cols:minmax(max-content,1fr) repeat(6,max-content)}
body.rb-workspace .fs-rows.fs-rec{--fs-cols:max-content repeat(3,max-content) minmax(max-content,1fr)}
body.rb-workspace .fs-rows>.fs-grid,body.rb-workspace .fs-rows>.fs-row,body.rb-workspace .fs-rows>.fs-row>summary{display:grid;grid-column:1/-1;grid-template-columns:subgrid}
body.rb-workspace .fs-row-body{grid-column:1/-1}
body.rb-workspace .fs-grid>span{white-space:nowrap;overflow:visible;text-overflow:clip;min-width:max-content}
@media(min-width:641px){
 body.rb-workspace #findings-app .fw-table{display:table;width:max-content}
 body.rb-workspace #findings-app .fw-table thead{display:table-header-group}
 body.rb-workspace #findings-app .fw-table tbody{display:table-row-group}
 body.rb-workspace #findings-app .fw-table tr{display:table-row}
 body.rb-workspace #findings-app .fw-table :is(th,td){display:table-cell;width:auto}
 body.rb-workspace #findings-app .fw-table .fw-who{display:none!important}
 body.rb-workspace .la-list{--c-name:minmax(260px,1fr);--c-kind:minmax(180px,max-content);--c-type:minmax(180px,max-content);width:max-content;min-width:100%}
 body.rb-workspace .la-row .kd,body.rb-workspace .la-head .hc.k{display:block!important}
}

@media(max-width:640px){body.rb-workspace #findings-app .fw-tile:nth-child(3) b{font-size:var(--text-body);line-height:var(--leading)}}
body.rb-workspace main.ws#documents-app #files-table :is(.fname,.ref-type,.document-info small){white-space:nowrap!important;max-width:none!important;line-height:1.45}
/* T16: reserve complete amounts, use the available list width and let free text wrap. */
body.rb-workspace :is(.tw,.table-scroll,.fw-card) table{width:100%;overflow:visible!important}
body.rb-workspace #findings-app .fw-who{display:inline!important;white-space:normal;margin:0 0 0 8px}
body.rb-workspace #findings-app .fw-table :is(.fw-amount,.fw-date,.fw-items){width:1%!important;white-space:nowrap;overflow-wrap:normal;min-width:max-content}
body.rb-workspace #findings-app .fw-table .fw-items{min-width:5ch}
/* T17: every Findings cell participates in table layout, including after scrolling. */
body.rb-workspace #findings-app .fw-table :is(th,td){position:static}
body.rb-workspace #findings-app .fw-table :is(.fw-title,.fw-party,.fw-client,.fw-todo){white-space:normal;overflow-wrap:anywhere;min-width:10ch;max-width:32ch}
/* T18: give the finding most of the width, with content-sized numeric columns.
   The table can scroll inside its card; long descriptions still wrap in full. */
body.rb-workspace #findings-app .fw-table .fw-title{width:48%!important;min-width:44ch;max-width:72ch}
body.rb-workspace #findings-app .fw-table .fw-party{width:20%!important;min-width:20ch;max-width:24ch}
body.rb-workspace #findings-app .fw-table :is(.fw-todo,th:last-child){width:auto!important;min-width:32ch;max-width:36ch}
body.rb-workspace #findings-app .fw-table .fw-amount{min-width:13ch}
body.rb-workspace #files-table{overflow:visible!important}
body.rb-workspace .ws-nav .sidebar-avatar{background:var(--titlebar);color:var(--on-titlebar)}

/* T21: fit free text within Three columns; dates and amounts keep their content widths. */
body.rb-workspace main.ws#documents-app .rv2-split[data-layout=three] #files-table :is(.fname,.ref-type,.document-info small){white-space:normal!important;overflow-wrap:anywhere}
body.rb-workspace main.ws#documents-app .rv2-split[data-layout=three] #files-table [data-column=party]{min-width:18ch}
body.rb-workspace main.ws#documents-app .rv2-split[data-layout=three] #files-table :is(th,td)[data-column=amount]{position:static!important}
body .questions-screen.q-split .rv2-split[data-layout=three] .question-table,
body .questions-screen.q-split.rv2-split[data-layout=three] .question-table{width:100%}
body .questions-screen.q-split .rv2-split[data-layout=three] .question-table .question-title,
body .questions-screen.q-split.rv2-split[data-layout=three] .question-table .question-title{white-space:normal!important;height:auto;min-width:20ch;max-width:none;overflow-wrap:anywhere}