/* Browser host geometry. Component appearance belongs to canonical UVS theme
   documents; do not add profile- or route-specific visual branches here. */
html, body { margin: 0; min-block-size: 100%; }
body { font-family: system-ui, sans-serif; }
#bootstrap { min-block-size: 100svh; display: grid; place-content: center; gap: 18px; text-align: center; }
.bootstrap-mark { display: flex; justify-content: center; gap: 3px; }
.bootstrap-mark i { inline-size: 18px; block-size: 18px; background: currentColor; }
.bootstrap-mark i:last-child { align-self: end; inline-size: 12px; block-size: 12px; }
[data-uvs-semantic-kind='app.shell'] { min-block-size: 100svh; }
[data-uvs-semantic-kind='app.header'] { justify-content: space-between; padding: 14px 24px; flex-wrap: wrap; gap: 12px; }
[data-uvs-semantic-kind='app.header.actions'] { flex-wrap: wrap; }
[data-uvs-semantic-kind='app.workspace'] { align-items: stretch; flex: 1; }
[data-uvs-semantic-kind='app.navigation'] { inline-size: 216px; flex: 0 0 216px; gap: 4px; }
[data-uvs-semantic-kind^='app.nav_link'] { text-decoration: none; }
[data-uvs-semantic-kind='app.surface'] { padding: 20px; flex: 1; }
[data-uvs-semantic-kind='app.overlay.anchor'] { position: fixed; inset-inline-end: 20px; inset-block-start: 64px; inline-size: min(340px, calc(100vw - 24px)); z-index: 20; max-block-size: calc(100svh - 80px); overflow: auto; }
[data-uvs-semantic-kind='account.entry'] { inline-size: min(360px, 100%); margin: max(24px, 10svh) auto 24px; gap: 20px; }
[data-uvs-semantic-kind='account.entry'] label { display: flex; flex-direction: column; gap: 6px; }
[data-uvs-semantic-kind='account.entry'] input { box-sizing: border-box; inline-size: 100%; min-block-size: 38px; }
[data-uvs-semantic-kind='workspace.selector'] { inline-size: min(720px, 100%); margin: 24px auto; gap: 12px; }
[data-uvs-semantic-kind='workspace.selector'] > button { text-align: start; min-block-size: 48px; }
[data-density='compact'] [data-uvs-semantic-kind='app.header'] { padding-block: 8px; }
[data-density='compact'] [data-uvs-semantic-kind='app.surface'] { padding: 12px; }
@media (max-width: 700px) {
  [data-uvs-semantic-kind='app.header'] { padding: 12px; }
  [data-uvs-semantic-kind='app.workspace'] { flex-direction: column; }
  [data-uvs-semantic-kind='app.navigation'] { inline-size: 100%; flex-basis: auto; flex-direction: row; overflow-x: auto; }
  [data-uvs-semantic-kind^='app.nav_link'] { white-space: nowrap; flex: 0 0 auto; }
  [data-uvs-semantic-kind='app.surface'] { padding: 12px; }
}
