/* Shared viewport containment. Deliberately excludes PDF page and artwork sizing. */
@layer sentriiq-precision {
 html:root .sentriiq-corp-shell {width:100%!important;max-width:100%!important;min-width:0!important}
 html:root .sentriiq-corp-shell > .flex-1 {width:0!important;min-width:0!important;max-width:100%!important;flex:1 1 0!important}
 html:root .sentriiq-corp-shell .sentriiq-corp-topbar {max-width:100%!important;box-sizing:border-box!important;flex-wrap:wrap!important}
 html:root .sentriiq-corp-shell .sentriiq-corp-topbar > div:has([aria-label="Search tools and features"]) {flex:0 1 auto!important;flex-wrap:wrap!important;max-width:100%!important;min-width:0!important}
 html:root .sentriiq-corp-topbar > * {min-width:0;max-width:100%;box-sizing:border-box}
 html:root .sentriiq-corp-content {width:100%!important;min-width:0!important;box-sizing:border-box!important}
 /* Compact illustration cards: only the known empty-state structure, not data cards. */
 :root .sentriiq-card.flex-col.text-center:has(>h3):has(>div>svg):not(:has(input,button,table,a,canvas)) {min-height:0!important;padding:20px!important;gap:6px!important;border:1px solid #d6dee8!important;box-shadow:none!important;background:linear-gradient(120deg,#f0f5fc,#fff)!important}
 :root .sentriiq-card.flex-col.text-center:has(>h3):not(:has(input,button,table,a,canvas)) > div:has(>svg) {width:40px!important;height:40px!important;margin:0!important;background:#e7effc!important;color:#1c69d4!important}
 :root .sentriiq-card.flex-col.text-center:has(>h3):not(:has(input,button,table,a,canvas)) > div > svg {width:22px!important;height:22px!important;color:#1c69d4!important}
 :root .sentriiq-card.flex-col.text-center:has(>h3):not(:has(input,button,table,a,canvas)) > h3 {font-size:15px!important;margin:0!important;color:#243448!important}
 :root .sentriiq-card.flex-col.text-center:has(>h3):not(:has(input,button,table,a,canvas)) > p {font-size:13px!important;margin:0!important;color:#526278!important}
 :root :is(dialog,[role=dialog],[role=alertdialog]) {box-sizing:border-box!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;overflow:auto;overscroll-behavior:contain;background:#f8fafc;color:#243448;border-color:#cbd5e1;border-radius:8px;box-shadow:0 20px 64px #10203433}
 :root :is(dialog,[role=dialog],[role=alertdialog]) :is(input,textarea,select) {max-width:100%;box-sizing:border-box}
 :root :is(dialog,[role=dialog],[role=alertdialog]) :is(h1,h2,h3) {overflow-wrap:anywhere}
 :root dialog {background:#f8fafc!important;color:#243448!important;border:1px solid #cbd5e1!important;border-radius:8px!important;box-shadow:0 20px 64px #10203433!important}
 :root dialog :is(h1,h2,h3,p,label) {color:#243448!important}
 :root :is([role=menu],[role=listbox],[data-radix-popper-content-wrapper]) {max-width:calc(100vw - 16px);box-sizing:border-box}
 :root :is([role=menu],[role=listbox]) {max-height:min(480px,calc(100dvh - 32px));overflow-y:auto}
 @media(max-width:640px){
  html:root .sentriiq-corp-topbar > .relative:has(>input[placeholder="Search documents..."]) {flex:1 1 100%!important;width:100%!important;max-width:none!important;order:3}
  :root .sentriiq-corp-content:not(:has(.sentriiq-corp-editor)) {padding:12px!important}
  :root :is(dialog,[role=dialog],[role=alertdialog]) {padding:12px}
 }
}
