#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:100%;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}.shell-nav-bar{border-bottom:1px solid #e0e0e0}.app-footer{text-align:center;color:#6b6b6b;border-top:1px solid #e0e0e0;padding:12px 24px;font-size:12px}.coming-soon-image{width:100%;height:100%}.app-table{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px}.app-table__header{border-bottom:1px solid #e0e0e0;margin-top:20px;padding:16px}.app-table__body{flex-direction:column;justify-content:center;padding:16px;display:flex}.grid-empty{text-align:center}.app-table__footer{border-top:1px solid #e0e0e0;padding:0 16px}.table-footer{background-color:var(--shell-color-background-surface);color:var(--shell-color-text-primary);border-top:1px solid var(--shell-color-border-subtle);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.pagination-controls{align-items:center;gap:16px;display:flex}.rows-per-page{white-space:nowrap;align-items:center;gap:6px;display:flex}@media (width<=768px){.table-footer{flex-direction:column;align-items:flex-start}.pagination-controls{justify-content:space-between;width:100%}}.table-empty{text-align:center;padding:48px 16px}.table-empty-image{width:120px;margin-bottom:16px}.table-loading{justify-content:center;align-items:center;min-height:240px;display:flex}.loader-container{flex-direction:column;justify-content:center;align-items:center;display:flex}.loader-container.fullscreen{background-color:#fff;height:100vh}.loader{gap:6px;display:flex}.loader span{background-color:#555;border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite both bounce}.loader span:first-child{animation-delay:-.32s}.loader span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.loader-text{color:#6b7280;margin-top:12px;font-size:14px}
