/* Shared AMS / Receipt Manager table navigation. Never shrink the application
   shell to a table's intrinsic width; give the table its own horizontal viewport. */
.pulse-table-host{min-width:0;max-width:100%}
.pulse-table-scroll.pulse-table-scroll{max-width:100%!important;min-width:0;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-color:var(--pulse-accent,#775182) var(--pulse-surface-soft,#f4eff5)}
.pulse-table-scroll:focus-visible{outline:2px solid var(--pulse-accent,#775182);outline-offset:2px}
.pulse-table-controls{max-width:100%;min-width:0;margin:12px 0 6px;color:var(--pulse-text-muted,#655e68);font:13px/1.4 Calibri,"Segoe UI",Arial,sans-serif}
.pulse-table-controls[hidden]{display:none!important}
.pulse-table-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 6px}
.pulse-table-buttons{display:flex;flex-shrink:0;gap:6px}
.pulse-table-controls .pulse-table-buttons button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid var(--pulse-line,#d8cadf);border-radius:7px;background:var(--pulse-surface,#fff);color:var(--pulse-accent,#775182);font:600 13px/1.3 Calibri,"Segoe UI",Arial,sans-serif;cursor:pointer}
.pulse-table-controls .pulse-table-buttons button:disabled{opacity:.45;cursor:default}
.pulse-table-controls button:focus-visible{outline:2px solid var(--pulse-accent,#775182);outline-offset:2px}
.pulse-table-top-scroll{height:18px;overflow-x:scroll;overflow-y:hidden;scrollbar-color:var(--pulse-accent,#775182) var(--pulse-surface-soft,#f4eff5);border-radius:5px;background:var(--pulse-surface-soft,#f4eff5)}
.pulse-table-scroll-track{height:1px;pointer-events:none}
.pulse-table-top-scroll::-webkit-scrollbar,.pulse-table-scroll::-webkit-scrollbar{height:12px;width:12px}
.pulse-table-top-scroll::-webkit-scrollbar-thumb,.pulse-table-scroll::-webkit-scrollbar-thumb{background:var(--pulse-accent,#775182);border:2px solid var(--pulse-surface-soft,#f4eff5);border-radius:8px}
.pulse-table-top-scroll::-webkit-scrollbar-track,.pulse-table-scroll::-webkit-scrollbar-track{background:var(--pulse-surface-soft,#f4eff5)}
@media(max-width:480px){.pulse-table-nav{flex-wrap:wrap;gap:6px}.pulse-table-buttons{margin-left:auto}}
@media print{.pulse-table-controls{display:none!important}.pulse-table-scroll.pulse-table-scroll{overflow:visible!important;max-width:none!important}}
