/* Adaptive shell and shared directory patterns. Kept separate from generated CSS. */
@media (min-width: 992px) {
  .si-shell__body,
  body.si-sidebar-collapsed .si-shell__body {
    grid-template-columns: clamp(16rem, 18vw, 18rem) minmax(0, 1fr);
  }

  body.si-sidebar-collapsed .si-shell__body {
    grid-template-columns: 4.75rem minmax(0, 1fr);
  }
}

@media (min-width: 992px) and (max-width: 1279.98px) {
  .si-shell__body { grid-template-columns: 4.75rem minmax(0, 1fr); }
  .si-sidebar .nav-label,
  .si-sidebar .nav-arrow,
  .si-sidebar .nav-header,
  .si-sidebar__footer-link span,
  .si-sidebar__search input { display: none; }
  .si-sidebar .nav-link,
  .si-sidebar__footer-link { justify-content: center; }
  .si-sidebar__search { justify-content: center; padding-inline: 0; }
  .si-sidebar__search i { position: static; }
  .si-sidebar .nav-link p { display: none; }
  .si-sidebar .nav-icon { margin: 0; }
  .si-topbar__brand-meta { display: none; }
}

@media (max-width: 1399.98px) {
  .si-topbar__shortcut--ghost { display: none; }
  .si-topbar__brand-copy .si-topbar__meta { display: none; }
  .si-topbar__user { max-width: 13rem; }
  .si-topbar__user span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

@media (max-width: 1199.98px) {
  .si-topbar__shortcut span:not(.si-topbar__shortcut-badge) { display: none; }
  .si-topbar__shortcut { min-width: 2.8rem; justify-content: center; padding-inline: .75rem; }
}

.si-topbar__user { display: inline-flex; align-items: center; gap: .5rem; min-width: 0; }
.si-topbar__user i { flex: 0 0 auto; }

.si-people-page { display: grid; gap: 1rem; container-type: inline-size; }
.si-people-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(24rem, 34rem);
  gap: 1.5rem;
  align-items: end;
  padding: 1.25rem;
  border: 1px solid rgba(34,37,43,.08);
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 8px 24px rgba(34,37,43,.06);
}
.si-people-eyebrow { margin: 0 0 .35rem; color: var(--si-muted); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.si-people-hero h1 { margin: 0; color: var(--si-ink); font-size: clamp(1.6rem, 3cqw, 2rem); font-weight: 800; line-height: 1.1; }
.si-people-hero__copy > p:last-child { max-width: 44rem; margin: .45rem 0 0; color: var(--si-muted); line-height: 1.5; }
.si-people-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; align-items: end; min-width: 0; }
.si-people-search > label { grid-column: 1 / -1; color: var(--si-ink-soft); font-size: .78rem; font-weight: 750; }
.si-people-search__control { position: relative; min-width: 0; }
.si-people-search__control > i { position: absolute; z-index: 1; left: .9rem; top: 50%; transform: translateY(-50%); color: var(--si-muted); }
.si-people-search__control .form-control { min-height: 3rem; padding-left: 2.55rem; padding-right: 2.3rem; }
.si-people-search__clear { position: absolute; right: .8rem; top: 50%; transform: translateY(-50%); color: var(--si-muted); }
.si-people-search .btn { min-height: 3rem; }
.si-people-summary { padding: 0 .25rem; color: var(--si-muted); font-size: .88rem; }
.si-people-summary strong { color: var(--si-ink); }
.si-people-summary span { margin-left: .25rem; }
.si-people-directory { overflow: hidden; border: 1px solid rgba(34,37,43,.08); border-radius: 1rem; background: #fff; box-shadow: 0 8px 24px rgba(34,37,43,.05); }
.si-people-directory__head,
.si-people-row { display: grid; grid-template-columns: minmax(15rem, 1.35fr) minmax(15rem, 1.25fr) minmax(9rem, .75fr) minmax(4rem, .3fr) minmax(7.5rem, .55fr); gap: 1rem; align-items: center; }
.si-people-directory__head { padding: .8rem 1rem; background: #f4f1ec; color: var(--si-muted); font-size: .69rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.si-people-row { padding: 1rem; border-top: 1px solid rgba(34,37,43,.07); }
.si-people-row:first-child { border-top: 0; }
.si-people-row__person,
.si-people-row__assignment { display: grid; gap: .18rem; min-width: 0; }
.si-people-row__person strong,
.si-people-row__assignment strong { color: var(--si-ink); font-size: .92rem; font-weight: 780; line-height: 1.3; overflow-wrap: normal; word-break: normal; }
.si-people-row__number { color: var(--si-primary-deep); font-size: .72rem; font-weight: 850; letter-spacing: .06em; }
.si-people-row small,
.si-people-row__assignment span { color: var(--si-muted); font-size: .8rem; line-height: 1.35; }
.si-people-status { display: inline-flex; width: fit-content; max-width: 100%; padding: .38rem .62rem; border: 1px solid rgba(34,37,43,.08); border-radius: 999px; background: #f3f4f6; color: var(--si-ink-soft); font-size: .72rem; font-weight: 800; line-height: 1.2; }
.si-people-status.is-provisional { border-color: rgba(169,101,22,.2); background: #fff8ed; color: var(--si-warning); }
.si-people-row__cases strong { font-size: 1.05rem; }
.si-people-row__action { text-align: right; }
.si-people-row__action .btn { display: inline-flex; align-items: center; gap: .45rem; white-space: nowrap; }
.si-people-row__mobile-label { display: none; }
.si-people-empty { display: grid; justify-items: center; gap: .45rem; padding: 3rem 1rem; color: var(--si-muted); text-align: center; }
.si-people-empty > i { font-size: 1.6rem; }
.si-people-empty strong { color: var(--si-ink); }

@container (max-width: 1050px) {
  .si-people-directory__head { display: none; }
  .si-people-directory__body { display: grid; gap: .75rem; padding: .75rem; background: #f6f6f6; }
  .si-people-row { grid-template-columns: minmax(14rem, 1.25fr) minmax(13rem, 1fr) auto auto; gap: .8rem 1rem; border: 1px solid rgba(34,37,43,.08); border-radius: .75rem; background: #fff; }
  .si-people-row__status { grid-column: 1 / 3; }
  .si-people-row__cases { grid-column: 3; grid-row: 1; text-align: center; }
  .si-people-row__action { grid-column: 4; grid-row: 1; }
  .si-people-row__mobile-label { display: block; color: var(--si-muted); font-size: .68rem; font-weight: 750; }
}

@container (max-width: 720px) {
  .si-people-hero { grid-template-columns: 1fr; padding: 1rem; }
  .si-people-search { grid-template-columns: 1fr; }
  .si-people-search > label { grid-column: auto; }
  .si-people-search .btn { width: 100%; }
  .si-people-row { grid-template-columns: minmax(0, 1fr) auto; }
  .si-people-row__person { grid-column: 1; }
  .si-people-row__cases { grid-column: 2; grid-row: 1; }
  .si-people-row__assignment { grid-column: 1 / -1; }
  .si-people-row__status { grid-column: 1 / -1; }
  .si-people-row__action { grid-column: 1 / -1; grid-row: auto; }
  .si-people-row__action .btn { width: 100%; justify-content: center; }
}

@media (max-width: 575.98px) {
  .si-topbar__brand-copy { display: none; }
  .si-topbar__user span { display: none; }
}

.si-phase-page-header { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.si-phase-page-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; }
.si-phase-filter { border: 1px solid rgba(34,37,43,.08); border-radius: 1rem; box-shadow: 0 8px 24px rgba(34,37,43,.04); }
.si-phase-metrics { display: grid; grid-template-columns: repeat(auto-fit,minmax(10rem,1fr)); gap: .75rem; }
.si-phase-metric { display: grid; gap: .2rem; padding: .9rem 1rem; border: 1px solid rgba(34,37,43,.08); border-radius: .75rem; background: #fff; }
.si-phase-metric span { color: var(--si-muted); font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.si-phase-metric strong { color: var(--si-ink); font-size: 1.55rem; line-height: 1.1; }
.si-phase-empty { display: grid; justify-items: center; gap: .45rem; padding: 3rem 1rem; color: var(--si-muted); text-align: center; }
.si-phase-empty i { font-size: 1.6rem; }
.si-phase-empty strong { color: var(--si-ink); }

.si-request-list { overflow: hidden; container-type: inline-size; border: 1px solid rgba(34,37,43,.08); border-radius: 1rem; }
.si-request-list__head,
.si-request-row { display: grid; grid-template-columns: minmax(14rem,1.3fr) minmax(13rem,1.15fr) minmax(10rem,.85fr) minmax(11rem,.85fr) minmax(8rem,.6fr); gap: 1rem; align-items: center; }
.si-request-list__head { padding: .8rem 1rem; background: #f4f1ec; color: var(--si-muted); font-size: .69rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.si-request-row { padding: 1rem; border-top: 1px solid rgba(34,37,43,.07); }
.si-request-row:first-child { border-top: 0; }
.si-request-row__identity,
.si-request-row__procedure,
.si-request-row__tracking,
.si-request-row__scope { display: grid; gap: .2rem; min-width: 0; }
.si-request-row strong { color: var(--si-ink); font-size: .88rem; line-height: 1.3; }
.si-request-row small { color: var(--si-muted); font-size: .77rem; line-height: 1.35; }
.si-request-row__folio-label { color: var(--si-muted); font-size: .65rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.si-request-row__identity > a { width: fit-content; color: var(--si-primary-deep); font-size: .76rem; font-weight: 850; }
.si-request-row__document { margin-top: .2rem; }
.si-request-status { width: fit-content; max-width: 100%; padding: .32rem .58rem; border: 1px solid rgba(34,37,43,.08); border-radius: 999px; background: #f3f4f6; color: var(--si-ink-soft); font-size: .72rem; font-weight: 800; }
.si-request-row__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .35rem; }

@container (max-width: 1000px) {
  .si-request-list__head { display: none; }
  .si-request-list__body { display: grid; gap: .75rem; padding: .75rem; background: #f6f6f6; }
  .si-request-row { grid-template-columns: minmax(13rem,1.2fr) minmax(12rem,1fr) minmax(9rem,.7fr); gap: .75rem 1rem; border: 1px solid rgba(34,37,43,.08); border-radius: .75rem; background: #fff; }
  .si-request-row__scope { grid-column: 1 / 3; }
  .si-request-row__actions { grid-column: 3; }
}
@container (max-width: 680px) {
  .si-request-row { grid-template-columns: minmax(0,1fr); }
  .si-request-row__scope,
  .si-request-row__actions { grid-column: auto; }
  .si-request-row__actions { justify-content: stretch; }
  .si-request-row__actions .btn { flex: 1 1 auto; }
}

.si-adaptive-table-card { container-type: inline-size; overflow: hidden; }
@container (max-width: 760px) {
  .si-adaptive-table-card .table-responsive { overflow: visible; padding: .75rem; background: #f6f6f6; }
  .si-adaptive-table thead { display: none; }
  .si-adaptive-table,
  .si-adaptive-table tbody,
  .si-adaptive-table tr,
  .si-adaptive-table td { display: block; width: 100%; }
  .si-adaptive-table tbody { display: grid; gap: .75rem; }
  .si-adaptive-table tbody tr { padding: .8rem; border: 1px solid rgba(34,37,43,.08); border-radius: .7rem; background: #fff; }
  .si-adaptive-table > :not(caption) > * > * { padding: .42rem 0; border: 0; background: transparent; }
  .si-adaptive-table td[data-label] { display: grid; grid-template-columns: minmax(7rem,8rem) minmax(0,1fr); gap: .65rem; text-align: left !important; }
  .si-adaptive-table td[data-label]::before { content: attr(data-label); color: var(--si-muted); font-size: .68rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
  .si-adaptive-table tr:has(td[colspan]) { display: block; }
  .si-adaptive-table td[colspan] { text-align: center !important; }
}

@media (max-width: 767.98px) {
  .si-phase-page-header { display: grid; }
  .si-phase-page-actions { justify-content: stretch; }
  .si-phase-page-actions > .btn,
  .si-phase-page-actions > .dropdown,
  .si-phase-page-actions > .dropdown .btn { width: 100%; }
}

.si-report-toolbar { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; }
.si-report-toolbar .dropdown-item { display: flex; align-items: center; min-height: 2.35rem; }

.si-dense-workspace { container-type: inline-size; }
.si-dense-workspace .table-responsive { max-height: min(34rem,65vh); border-top: 1px solid rgba(34,37,43,.07); }
.si-dense-table { min-width: 48rem; margin-bottom: 0; }
.si-dense-table thead { position: sticky; z-index: 3; top: 0; }
.si-dense-table thead th { padding-block: .68rem; background: #f4f1ec; box-shadow: inset 0 -1px rgba(34,37,43,.08); color: var(--si-muted); font-size: .69rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.si-dense-table tbody td { padding-block: .7rem; font-size: .84rem; line-height: 1.35; }
.si-dense-table td,
.si-dense-table th { vertical-align: middle; }
.si-dense-table td:last-child { white-space: nowrap; }

@container (max-width: 760px) {
  .si-dense-workspace .table-responsive { max-height: none; }
  .si-dense-table { min-width: 42rem; }
}

@media (max-width: 767.98px) {
  .si-report-toolbar,
  .si-report-toolbar > .btn,
  .si-report-toolbar > .dropdown,
  .si-report-toolbar > .dropdown .btn { width: 100%; }
}
