/* Requested interaction refinements; original Floresta tokens remain canonical. */
.app { position:fixed; inset:0; height:100vh; height:100dvh; grid-template-rows:minmax(0,1fr); overflow:clip; }
.app__main,.app__nav { height:100%; min-height:0; }
.app__content { max-width:none; min-width:0; }
.rs-nav__brand { flex-shrink:0; width:100%; min-height:44px; border:0; background:transparent; text-align:left; cursor:default; }
button.rs-nav__brand { cursor:pointer; border-radius:var(--radius-md); }
button.rs-nav__brand:hover { background:var(--surface-nav-hover); }
button.rs-nav__brand:focus-visible { outline:2px solid var(--focus-color-on-dark); outline-offset:2px; }
.rs-nav__brandicon { display:block; width:36px; height:36px; flex:0 0 36px; object-fit:contain; border-radius:var(--radius-md); }
.rs-nav__brandtext { display:grid; gap:5px; min-width:0; }
.rs-nav--collapsed .rs-nav__brandtext { display:none; }
.rs-nav { overflow-y:auto; scrollbar-width:thin; }
.rs-nav__group,.rs-nav__foot { flex-shrink:0; }
.rs-nav__brand .rs-icon,.rs-nav__item .rs-icon { flex-shrink:0; }
.base-workspace-tools { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.base-workspace-tools .rs-btn { min-height:40px; }
.live-base--filters-hidden { grid-template-columns:minmax(0,1fr); }
.live-base .live-filters { position:sticky; top:12px; padding:0; display:flex; flex-direction:column; gap:0; max-height:calc(100vh - 64px); max-height:calc(100dvh - 64px); overflow:hidden; }
.live-base .live-filters[hidden] { display:none; }
.live-filters .filters__head { padding:12px 16px; gap:8px; flex-shrink:0; border-bottom:1px solid var(--border-subtle); }
.live-filters .filters__body { display:grid; gap:16px; padding:16px; overflow-y:auto; min-height:0; scrollbar-gutter:stable; overscroll-behavior-y:contain; }
.live-filters summary { cursor:pointer; padding-block:4px; }
.live-filters summary:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.rs-tableframe { min-width:0; }
.rs-tabletools { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 12px; background:var(--surface-card); border:1px solid var(--border-default); border-radius:var(--radius-lg) var(--radius-lg) 0 0; }
.rs-tabletools__actions { display:flex; gap:4px; }
.rs-tabletools button { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border:1px solid var(--border-default); border-radius:var(--radius-md); background:var(--surface-card); color:var(--text-strong); cursor:pointer; }
.rs-tabletools button:hover { background:var(--surface-hover); }
.rs-tabletools button:focus-visible,.rs-tablewrap--bounded:focus-visible,.rs-tabletopscroll:focus-visible { outline:2px solid var(--accent); outline-offset:-2px; }
.rs-tabletools button:disabled { cursor:default; opacity:.45; }
.rs-tabletopscroll { overflow-x:scroll; overflow-y:hidden; height:18px; background:var(--surface-subtle); border-inline:1px solid var(--border-default); }
.rs-tabletopscroll,.rs-tablewrap--bounded,.filters__body { scrollbar-color:var(--border-input) var(--surface-subtle); }
.rs-tablewrap--bounded { max-height:65vh; max-height:min(65dvh,760px); min-height:160px; border-top-left-radius:0; border-top-right-radius:0; overscroll-behavior-x:contain; scrollbar-gutter:stable; }
.rs-tablewrap--bounded .rs-table { min-width:1100px; }
.rs-tablewrap--bounded .rs-table th { top:0; }
.rs-tablewrap--bounded .rs-col-check { position:sticky; left:0; z-index:2; min-width:44px; width:44px; background:var(--surface-card); }
.rs-tablewrap--bounded th.rs-col-check { z-index:4; }
.rs-tablewrap--bounded .rs-col-sticky { left:44px; }
@media(max-width:1180px) {
 .live-base { grid-template-columns:minmax(0,1fr); }
 .live-base .live-filters { position:relative; top:auto; max-height:70vh; max-height:70dvh; }
}
@media(max-width:720px) {
 .base-workspace-tools .rs-btn { min-height:44px; }
 .rs-tabletools button { width:44px; height:44px; }
 .rs-tabletools .rs-hint { font-size:12px; }
 .rs-tablewrap--bounded .rs-table { min-width:650px; }
 .rs-tablewrap--bounded .rs-col-sticky { position:static; }
 .rs-tablewrap--bounded .rs-col-check { position:static; }
}
