/* The existing shell owns the viewport; only its rail and main panes scroll. */
.mi-shell:has(.mi-catalog-rail){grid-template-columns:calc(var(--ds-s-8) * 8) minmax(0,1fr);overflow:hidden}
.mi-catalog-rail,.mi-catalog-detail{font-size:var(--ds-text-base);line-height:var(--ds-lh-base);color:var(--ds-ink)}
.mi-catalog-railhead{display:flex;flex-direction:column;gap:var(--ds-s-2);padding:var(--ds-s-3)}
.mi-catalog-railhead input[type=search]{box-sizing:border-box;width:100%;min-height:var(--ds-control-h);padding:0 var(--ds-s-2);border:1px solid var(--ds-field);border-radius:var(--ds-r-sm);background:var(--ds-surface);color:var(--ds-ink);font:inherit}
.mi-catalog-archived{display:flex;align-items:center;gap:var(--ds-s-1);color:var(--ds-ink-3);font-size:var(--ds-text-sm)}
.mi-catalog-archived input{accent-color:var(--ds-selection)}
.mi-catalog-label{margin:var(--ds-s-2) 0;color:var(--ds-ink-3);font-size:var(--ds-text-sm);line-height:var(--ds-lh-sm);font-weight:var(--ds-w-medium)}
.mi-catalog-rail nav>.mi-catalog-label{padding:0 var(--ds-s-3);text-transform:uppercase;letter-spacing:var(--ds-track-caps);font-size:var(--ds-text-caps)}
.mi-shell .mi-catalog-rail .mi-row{display:flex;align-items:center;gap:var(--ds-s-2);width:100%;min-height:var(--ds-control-h);padding:var(--ds-s-1) var(--ds-s-3);border:0;border-radius:0;box-shadow:none;background:var(--ds-canvas);color:var(--ds-ink);text-align:left;font:inherit;cursor:pointer}
.mi-catalog-node .mi-row-main{flex:1;min-width:0}
.mi-catalog-node .mi-row-title{font-size:var(--ds-text-base);font-weight:var(--ds-w-regular);white-space:normal;overflow-wrap:anywhere}
.mi-catalog-node .mi-row-quantity{margin-left:auto;color:var(--ds-ink-3);font-size:var(--ds-text-sm);font-variant-numeric:var(--ds-nums)}
.mi-shell .mi-catalog-node.is-selected{background:var(--ds-sel-bg);box-shadow:inset var(--ds-r-tag) 0 0 var(--ds-selection)}
.mi-shell .mi-catalog-node:hover,.mi-catalog-toggle:hover{background:var(--ds-paper-hover)}
.mi-catalog-group{display:flex;align-items:center}
.mi-catalog-group .mi-catalog-node{flex:1;min-width:0;padding-left:0}
.mi-catalog-toggle{display:grid;place-items:center;flex:none;width:var(--ds-s-6);min-height:var(--ds-control-h);padding:0;border:0;background:var(--ds-canvas);color:var(--ds-ink-3);cursor:pointer}
.mi-shell .mi-catalog-rail .mi-catalog-subnode{padding-left:var(--ds-s-8)}
.mi-catalog-branch [hidden]{display:none}
.mi-catalog-count{margin:0 0 var(--ds-s-4);color:var(--ds-ink-3);font-size:var(--ds-text-sm)}
.mi-catalog-toolbar{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--ds-s-3);margin-bottom:var(--ds-s-3)}
.mi-catalog-detail .mi-chips{gap:var(--ds-s-1)}
.mi-catalog-detail button.mi-chip{gap:var(--ds-s-1);min-height:var(--ds-control-h);padding:var(--ds-s-1) var(--ds-s-2);border-radius:var(--ds-r-sm);font:inherit;font-size:var(--ds-text-sm);cursor:pointer}
.mi-catalog-detail .mi-chip span{font-variant-numeric:var(--ds-nums)}
.mi-catalog-detail button.mi-chip.is-active{background:var(--ds-selection);color:var(--ds-surface)}
.mi-catalog-tools{display:flex;align-items:center;gap:var(--ds-s-2);margin-left:auto}
.mi-catalog-tools label{display:flex;align-items:center;gap:var(--ds-s-2);color:var(--ds-ink-3);font-size:var(--ds-text-sm)}
.mi-catalog-tools select{min-height:var(--ds-control-h);max-width:100%;padding:0 var(--ds-s-2);border:1px solid var(--ds-field);border-radius:var(--ds-r-sm);background:var(--ds-surface);color:var(--ds-ink);font:inherit}
.mi-catalog-types{margin-bottom:var(--ds-s-4)}
.mi-catalog-types .mi-catalog-label{margin-bottom:var(--ds-s-1)}
.mi-catalog-note{margin:0 0 var(--ds-s-2);color:var(--ds-ink-3);font-size:var(--ds-text-sm)}
.mi-catalog-table-wrap{width:100%;overflow-x:auto}
.mi-catalog-table{width:100%;border-collapse:collapse;background:var(--ds-surface);font-size:var(--ds-text-base);font-variant-numeric:var(--ds-nums)}
.mi-catalog-table th,.mi-catalog-table td{padding:var(--ds-s-2) var(--ds-s-3);border-bottom:1px solid var(--ds-hair);text-align:left;vertical-align:top}
.mi-catalog-table thead th{color:var(--ds-ink-3);font-size:var(--ds-text-caps);font-weight:var(--ds-w-medium);letter-spacing:var(--ds-track-caps);text-transform:uppercase;white-space:nowrap}
.mi-catalog-table td:first-child{min-width:calc(var(--ds-s-8) * 6);width:38%}
.mi-catalog-table .mi-catalog-group-header th{background:var(--ds-wash);color:var(--ds-ink-2);font-size:var(--ds-text-sm);font-weight:var(--ds-w-semi)}
.mi-catalog-table [data-cat-open]{cursor:pointer}
.mi-catalog-table tbody tr[data-cat-open]:hover{background:var(--ds-sel-bg)}
.mi-catalog-table .mi-catalog-part{display:inline;padding:0;min-height:0;border:0;background:transparent;color:var(--ds-ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}
.mi-catalog-table .mi-pill{min-height:var(--ds-tag-h);margin-left:var(--ds-s-2);padding:0 var(--ds-s-1);border-radius:var(--ds-r-tag);background:var(--ds-tint);color:var(--ds-ink-3);font-size:var(--ds-text-caps);white-space:nowrap}
.mi-catalog-table .mi-pill::before{display:none}
.mi-catalog-sub{display:block;margin-top:var(--ds-s-1);color:var(--ds-ink-3);font-size:var(--ds-text-sm);line-height:var(--ds-lh-sm)}
.mi-catalog-mono{font-family:var(--ds-mono)}
.mi-catalog-table .mi-catalog-num{text-align:right;white-space:nowrap}
.mi-catalog-pager{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-s-3);padding:var(--ds-s-3) 0;color:var(--ds-ink-3);font-size:var(--ds-text-sm)}
.mi-catalog-rail :focus-visible,.mi-catalog-detail :focus-visible{outline:2px solid var(--ds-focus);outline-offset:var(--ds-r-tag)}
@media(max-width:759px){
  .mi-catalog-tools{margin-left:0;flex-wrap:wrap}
  .mi-catalog-detail button.mi-chip,.mi-catalog-toggle{min-height:var(--ds-touch-h)}
}
@media(max-width:759px){
  .mi-shell:has(.mi-catalog-rail) .mi-rail{max-height:calc(var(--ds-touch-h) * 6);overflow:auto}
  .mi-shell:has(.mi-catalog-rail) .mi-main{flex:1;min-height:0;overflow:auto}
}
