:root dialog.chat-excel-viewer{width:min(980px,calc(100vw - 24px));height:min(820px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden;box-sizing:border-box}
:root dialog.chat-excel-viewer .modal-content-scroll{display:flex;flex-direction:column;gap:var(--space-inline);overflow:hidden;min-height:0;flex:1}
:root dialog.chat-excel-viewer .customer-dialog-header{margin:0;flex-shrink:0}
.chat-excel-viewer header>div{min-width:0}
.chat-excel-viewer header p{font-size:var(--type-meta);color:var(--text-secondary);margin:4px 0 0;overflow-wrap:anywhere;max-height:3em;overflow:auto}
.chat-excel-context{display:grid;gap:2px;flex-shrink:0;min-width:0;overflow-wrap:anywhere;font-size:var(--type-meta);color:var(--text-secondary)}
.chat-excel-context strong{font-size:var(--type-body);color:var(--text-primary)}
.chat-excel-stage{min-height:0;min-width:0;flex:1;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--action-radius);scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}
.chat-excel-stage:focus-visible{outline:2px solid var(--text-link);outline-offset:-2px}
.chat-excel-table{width:100%;border-collapse:collapse;font-size:var(--type-body);font-variant-numeric:tabular-nums}
.chat-excel-table :is(th,td){padding:var(--action-padding-block) var(--space-inline);border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.5;overflow-wrap:anywhere}
.chat-excel-table th{position:sticky;top:0;z-index:1;background:var(--surface-field);font-size:var(--type-label);font-weight:600;color:var(--text-secondary)}
.chat-excel-table td{color:var(--text-primary)}
.chat-excel-table .chat-excel-number{text-align:right;white-space:nowrap}
.chat-excel-table td:first-child{white-space:nowrap}
.chat-excel-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-inline);flex-shrink:0;margin:0}
.chat-excel-pagination[hidden]{display:none!important}
.chat-excel-pagination output{font-size:var(--type-meta);font-variant-numeric:tabular-nums}
.chat-excel-viewer .feedback{margin:0;font-size:var(--type-body)}
.chat-excel-viewer :is(.chat-excel-pagination button,.customer-dialog-actions a){min-height:var(--control-target);font-size:var(--type-action);padding:var(--action-padding-block) var(--action-padding-inline);border-radius:var(--action-radius)}
.chat-excel-viewer [aria-disabled=true]{opacity:.5;pointer-events:none}
.chat-excel-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;gap:var(--space-inline);align-items:center;flex-shrink:0}
.chat-excel-toolbar[hidden],.chat-excel-filters[hidden]{display:none!important}
.chat-excel-toolbar input{box-sizing:border-box;min-width:0;width:100%;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:var(--surface-field);color:var(--text-primary);font:inherit;font-size:var(--type-body)}
.chat-excel-toolbar input:focus-visible{outline:2px solid var(--text-link);outline-offset:-2px}
.chat-excel-toolbar .glass-button{min-height:var(--control-target);min-width:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);font-size:var(--type-action);border-radius:var(--action-radius)}
:root .chat-excel-toolbar button[data-active=true]{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--text-link)}
:root .chat-excel-toolbar button[data-active=true]:hover{background:var(--surface-hover)}
:root .chat-excel-toolbar button[data-active=true]:active{background:var(--surface-pressed)}
.chat-excel-status{grid-column:1/-1;font-size:var(--type-meta);color:var(--text-secondary)}
.chat-excel-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-fields);flex-shrink:0}
.chat-excel-filters .feedback{grid-column:1/-1}
:root dialog.chat-excel-viewer.has-excel-filters .modal-content-scroll{overflow:auto}
.chat-excel-viewer.has-excel-filters .chat-excel-stage{flex:1 0 100px}
@media(max-width:600px){.chat-excel-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-excel-filters>label:last-of-type{grid-column:1/-1}.chat-excel-viewer.has-excel-filters .chat-excel-context span{display:none}}
@supports(-webkit-touch-callout:none){@media(max-width:700px){.chat-excel-toolbar input{font-size:16px}}}
@media(max-height:550px){.chat-excel-viewer header p{display:none}.chat-excel-context{max-height:20px;overflow:auto}.chat-excel-context span{display:none}:root dialog.chat-excel-viewer .modal-content-scroll{overflow:auto}.chat-excel-stage{flex:1 0 90px}}

:root .chat-excel-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:var(--space-inline)}
:root .chat-excel-actions>*{min-width:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);font-size:var(--type-action);border-radius:var(--action-radius);white-space:nowrap}
@media(max-width:600px){:root .chat-excel-actions{grid-template-columns:repeat(2,minmax(0,1fr))}:root .chat-excel-actions>a{grid-column:1/-1;text-align:center}}

/* Detailed financial reports keep all eight columns readable inside the scroll area. */
.chat-excel-viewer.has-ledger .chat-excel-table{table-layout:fixed;min-width:1120px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):first-child{width:100px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):nth-child(3){width:140px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):nth-child(4){width:160px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):is(:nth-child(5),:nth-child(6)){width:110px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):nth-child(7){width:150px}
.chat-excel-viewer.has-ledger .chat-excel-table :is(th,td):nth-child(8){width:100px}
