    :root {
      --bg: #e9eef6;
      --bg-accent: #f2f5fa;
      --panel: #edf1f7;
      --panel-strong: #f4f7fb;
      --line: rgba(155, 168, 196, 0.3);
      --line-strong: rgba(112, 128, 158, 0.42);
      --text: #354158;
      --muted: #6d7890;
      --brand: #2075e8;
      --brand-soft: #d9e8ff;
      --header-blue-start: #e9eef6;
      --header-blue-mid: #edf2f8;
      --header-blue-end: #f5f8fc;
      --header-blue-soft: #dceaff;
      --accent: #20b7d8;
      --accent-soft: #d8f5fb;
      --ok: #2e9276;
      --ok-soft: #dff4ed;
      --warn: #a17318;
      --warn-soft: #f7edce;
      --risk: #a34a62;
      --risk-soft: #f7e1e8;
      --disabled: #e3e8f0;
      --neu-shadow-dark: rgba(150, 160, 185, 0.46);
      --neu-shadow-light: rgba(255, 255, 255, 0.98);
      --neu-raised: 10px 10px 22px var(--neu-shadow-dark), -10px -10px 22px var(--neu-shadow-light);
      --neu-raised-sm: 6px 6px 14px rgba(150, 160, 185, 0.38), -6px -6px 14px rgba(255, 255, 255, 0.96);
      --neu-pressed: inset 7px 7px 14px rgba(150, 160, 185, 0.38), inset -7px -7px 14px rgba(255, 255, 255, 0.98);
      --neu-focus: 0 0 0 3px rgba(32, 183, 216, 0.16), inset 5px 5px 11px rgba(150, 160, 185, 0.28), inset -5px -5px 11px rgba(255, 255, 255, 0.95);
      --shadow: var(--neu-raised);
      --radius: 18px;
    }

    * { box-sizing: border-box; }
    html, body { min-height: 100%; }
    body {
      margin: 0;
      color: var(--text);
      font-family: "IBM Plex Sans", "Avenir Next", "Segoe UI", system-ui, sans-serif;
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.38), transparent 34%),
        var(--bg);
    }

    body.auth-locked {
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.38), transparent 34%),
        var(--bg);
    }

    .shell {
      min-height: 100vh;
      display: grid;
      grid-template-rows: auto 1fr;
    }

    .topbar {
      position: sticky;
      top: 0;
      z-index: 20;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: center;
      padding: 10px 18px;
      background: rgba(233, 238, 246, 0.88);
      border-bottom: 1px solid rgba(255, 255, 255, 0.6);
      backdrop-filter: blur(18px);
      box-shadow: 8px 8px 20px rgba(150, 160, 185, 0.28), -8px -8px 20px rgba(255, 255, 255, 0.72);
    }

    .topbar-main {
      display: flex;
      flex-wrap: wrap;
      gap: 14px;
      align-items: center;
      justify-content: space-between;
    }

    .identity {
      display: flex;
      gap: 12px;
      align-items: center;
      min-width: 0;
    }

    .identity-mark {
      width: 56px;
      height: 56px;
      border-radius: 16px;
      background: var(--panel-strong);
      border: 1px solid rgba(255, 255, 255, 0.68);
      display: grid;
      place-items: center;
      overflow: hidden;
      box-shadow: var(--neu-raised-sm);
      flex: 0 0 auto;
    }

    .identity-mark img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .identity-copy { min-width: 0; }
    .eyebrow {
      margin: 0;
      color: rgba(214, 229, 250, 0.78);
      font-size: 0.74rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .title {
      margin: 0;
      font-size: clamp(0.98rem, 1.35vw, 1.18rem);
      line-height: 1;
      letter-spacing: -0.03em;
      color: var(--text);
    }
    .title-sub {
      display: none;
    }

    .topbar-nav {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
    }

    .topbar-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 34px;
      padding: 0.45rem 0.82rem;
      border-radius: 999px;
      border: 1px solid rgba(214, 233, 255, 0.16);
      background: rgba(255, 255, 255, 0.1);
      color: rgba(247, 251, 255, 0.9);
      font: inherit;
      font-weight: 600;
      cursor: pointer;
      transition: 140ms ease;
    }

    .topbar-link:hover,
    .topbar-link:focus-visible {
      background: rgba(194, 224, 255, 0.18);
      border-color: rgba(206, 229, 255, 0.28);
      color: #fff;
      outline: none;
    }

    .topbar-link.active {
      background: rgba(195, 226, 255, 0.24);
      border-color: rgba(219, 237, 255, 0.42);
      color: #ffffff;
    }

    .profile-shell {
      position: relative;
    }

    .profile-toggle {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 38px;
      padding: 4px 9px 4px 4px;
      border-radius: 999px;
      border: 1px solid rgba(214, 233, 255, 0.18);
      background: rgba(255, 255, 255, 0.11);
      color: #f7fbfc;
      cursor: pointer;
    }

    .profile-toggle:hover,
    .profile-toggle:focus-visible {
      background: rgba(195, 225, 255, 0.18);
      outline: none;
    }

    .profile-avatar {
      width: 28px;
      height: 28px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      background: linear-gradient(135deg, #0b549d, #2f82da);
      color: #fff;
      font-weight: 800;
      font-size: 0.82rem;
      letter-spacing: 0.04em;
    }

    .profile-meta {
      display: grid;
      gap: 1px;
      text-align: left;
    }

    .profile-name {
      font-size: 0.8rem;
      font-weight: 700;
      line-height: 1.1;
    }

    .profile-status {
      font-size: 0.7rem;
      color: rgba(214, 229, 250, 0.8);
      line-height: 1.1;
    }

    .profile-panel {
      position: absolute;
      right: 0;
      top: calc(100% + 10px);
      width: min(320px, 92vw);
      display: none;
      gap: 14px;
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(188, 167, 140, 0.32);
      background: rgba(255, 252, 247, 0.98);
      box-shadow: 0 18px 40px rgba(10, 24, 34, 0.18);
    }

    .profile-panel.open {
      display: grid;
    }

    .profile-panel-head {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .profile-panel-copy strong {
      display: block;
      margin-bottom: 4px;
      font-size: 0.92rem;
    }

    .profile-panel-copy p {
      margin: 0;
      color: var(--muted);
      font-size: 0.8rem;
      line-height: 1.45;
    }

    .profile-grid {
      display: grid;
      gap: 8px;
    }

    .profile-stat {
      border: 1px solid rgba(188, 167, 140, 0.36);
      border-radius: 14px;
      padding: 10px 12px;
      background: rgba(255, 255, 255, 0.76);
    }

    .profile-stat strong {
      display: block;
      margin-bottom: 4px;
      color: var(--muted);
      font-size: 0.74rem;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

    .profile-actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

	    .workspace {
	      display: grid;
	      grid-template-columns: minmax(0, 1fr);
	      gap: 18px;
	      padding: 18px 20px 24px;
	      align-items: start;
	      min-width: 0;
	    }

	    body.show-debug .workspace {
	      grid-template-columns: minmax(0, 1fr) 320px;
	    }

    .auth-gate {
      display: none;
      min-height: 100vh;
      padding: clamp(22px, 4vw, 52px);
      align-items: center;
    }

    body.auth-locked .topbar,
    body.auth-locked .workspace {
      display: none;
    }

    body.auth-locked .auth-gate {
      display: grid;
    }

    .auth-shell {
      width: min(980px, 100%);
      margin: 0 auto;
      display: grid;
      grid-template-columns: minmax(0, 0.95fr) minmax(340px, 420px);
      gap: clamp(22px, 4vw, 44px);
      align-items: center;
    }

    .auth-card {
      border-radius: 8px;
      overflow: hidden;
    }

    .auth-hero {
      padding: 8px 0;
      color: #f7fbff;
      display: grid;
      gap: 24px;
      align-content: center;
    }

    .auth-brand {
      width: fit-content;
      max-width: min(320px, 72vw);
      min-height: 60px;
      display: inline-flex;
      align-items: center;
      gap: 14px;
      color: #ffffff;
    }

    .auth-logo {
      display: block;
      width: 60px;
      height: 60px;
      object-fit: contain;
      flex: 0 0 auto;
    }

    .auth-wordmark {
      color: #ffffff;
      font-size: 1.8rem;
      font-weight: 700;
      line-height: 1;
    }

    .auth-kicker {
      margin: 0 0 12px;
      font-size: 0.82rem;
      letter-spacing: 0;
      text-transform: uppercase;
      color: rgba(214, 233, 255, 0.78);
    }

    .auth-title {
      margin: 0;
      font-size: clamp(2rem, 4vw, 3.35rem);
      line-height: 1;
      letter-spacing: 0;
      max-width: 12ch;
    }

    .auth-copy {
      margin: 16px 0 0;
      max-width: 29rem;
      color: rgba(247, 251, 255, 0.8);
      font-size: 1rem;
      line-height: 1.55;
    }

    .auth-card {
      background: rgba(255, 255, 255, 0.95);
      border: 1px solid rgba(214, 233, 255, 0.46);
      box-shadow: 0 24px 70px rgba(0, 20, 83, 0.28);
      padding: clamp(22px, 3vw, 30px);
      display: grid;
      gap: 16px;
      align-content: start;
    }

    .auth-card h2 {
      margin: 0;
      font-size: 1.45rem;
      letter-spacing: 0;
    }

    .auth-card p {
      margin: 0;
      color: var(--muted);
      line-height: 1.5;
    }

    .auth-status-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .auth-status {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 0.55rem 0.82rem;
      border-radius: 999px;
      background: rgba(11, 84, 157, 0.1);
      color: var(--header-blue-mid);
      font-size: 0.82rem;
      font-weight: 700;
    }

    .auth-status.is-warn {
      background: rgba(214, 233, 255, 0.86);
      color: var(--header-blue-start);
    }

    .auth-qr-shell {
      display: grid;
      place-items: center;
      padding: 20px;
      border-radius: 8px;
      border: 1px solid rgba(1, 36, 113, 0.14);
      background: #f7fbff;
      min-height: 280px;
    }

    .auth-qr-image {
      width: 240px;
      height: 240px;
      display: none;
      border-radius: 8px;
      background: #fff;
      border: 1px solid rgba(214, 233, 255, 0.78);
      padding: 14px;
      box-shadow: 0 16px 40px rgba(0, 20, 83, 0.12);
      object-fit: contain;
    }

    .auth-qr-empty {
      text-align: center;
      max-width: 24rem;
    }

    .auth-qr-empty strong {
      display: block;
      margin-bottom: 8px;
      font-size: 1rem;
      color: var(--text);
    }

    .auth-actions {
      display: grid;
      gap: 10px;
    }

    .auth-actions .btn {
      justify-content: center;
      min-height: 52px;
      font-size: 1rem;
      border-radius: 8px;
      letter-spacing: 0;
    }

    .auth-actions .btn:not(.secondary) {
      background:
        linear-gradient(135deg, var(--header-blue-start) 0%, var(--header-blue-mid) 52%, var(--header-blue-end) 100%);
      border-color: rgba(1, 36, 113, 0.94);
      box-shadow: 0 14px 30px rgba(0, 20, 83, 0.22);
    }

    .auth-actions .btn.secondary {
      background: #ffffff;
      color: var(--header-blue-mid);
      border-color: rgba(1, 36, 113, 0.2);
    }

    .auth-deeplink {
      display: none;
      text-align: center;
    }

    .auth-password {
      display: none;
      gap: 10px;
      padding-top: 4px;
      border-top: 1px solid rgba(188, 167, 140, 0.35);
    }

    .auth-password.visible {
      display: grid;
    }

    .auth-footnote {
      font-size: 0.82rem;
      color: var(--muted);
    }

    .panel {
      background: var(--panel);
      border: 1px solid rgba(188, 167, 140, 0.55);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      backdrop-filter: blur(8px);
    }

	    .sidebar {
	      display: none;
	    }

    .nav-section h2,
    .context-section h2,
    .output-section h2,
    .page-head h2 {
      margin: 0;
      font-size: 1rem;
      letter-spacing: -0.02em;
    }

    .nav-meta,
    .section-copy,
    .mini-copy,
    .hint,
    .muted {
      color: var(--muted);
      font-size: 0.88rem;
      line-height: 1.45;
    }

    .menu-list {
      display: grid;
      gap: 8px;
      margin-top: 12px;
    }

    .menu-btn {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      width: 100%;
      padding: 12px 14px;
      border-radius: 16px;
      border: 1px solid transparent;
      background: rgba(245, 247, 249, 0.45);
      color: var(--text);
      text-align: left;
      font: inherit;
      cursor: pointer;
      transition: 160ms ease;
    }

    .menu-btn:hover,
    .menu-btn:focus-visible {
      border-color: rgba(11, 92, 99, 0.24);
      background: rgba(220, 239, 240, 0.76);
      outline: none;
    }

    .menu-btn.active {
      border-color: rgba(11, 92, 99, 0.32);
      background: linear-gradient(180deg, rgba(220, 239, 240, 0.98), rgba(234, 245, 245, 0.88));
      box-shadow: inset 0 0 0 1px rgba(11, 92, 99, 0.06);
    }

    .menu-btn small {
      display: block;
      color: var(--muted);
      font-size: 0.74rem;
      margin-top: 2px;
    }

    .badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 1.65rem;
      padding: 0.2rem 0.46rem;
      border-radius: 999px;
      background: #ece6dd;
      color: #5a4c3c;
      font-size: 0.76rem;
      font-weight: 700;
      line-height: 1;
      white-space: nowrap;
    }

    .badge.brand { background: var(--brand-soft); color: var(--brand); }
    .badge.ok { background: var(--ok-soft); color: var(--ok); }
    .badge.neutral { background: rgba(112, 127, 142, 0.12); color: #5d6d7b; }
    .badge.warn { background: var(--warn-soft); color: var(--warn); }
    .badge.risk { background: var(--risk-soft); color: var(--risk); }
    .badge.disabled { background: #eef1f3; color: #8a949c; }

    .context-grid {
      display: grid;
      gap: 8px;
      margin-top: 12px;
      min-width: 0;
    }

    .context-switcher {
      display: grid;
      gap: 8px;
      margin-top: 12px;
      min-width: 0;
    }

    .context-button {
      display: grid;
      gap: 4px;
      width: 100%;
      min-width: 0;
      padding: 12px 14px;
      border-radius: 16px;
      border: 1px solid rgba(188, 167, 140, 0.46);
      background: rgba(255, 255, 255, 0.76);
      color: var(--text);
      text-align: left;
      font: inherit;
      cursor: pointer;
      transition: transform 120ms ease, border-color 120ms ease, background 120ms ease;
    }

    .context-button:hover,
    .context-button:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(11, 92, 99, 0.28);
      background: rgba(220, 239, 240, 0.78);
      outline: none;
    }

    .context-button.is-active {
      border-color: rgba(11, 92, 99, 0.34);
      background: linear-gradient(180deg, rgba(220, 239, 240, 0.92), rgba(255, 255, 255, 0.98));
      box-shadow: inset 0 0 0 1px rgba(11, 92, 99, 0.08);
    }

    .context-button.is-disabled {
      cursor: not-allowed;
      background: linear-gradient(180deg, rgba(239, 240, 242, 0.9), rgba(245, 246, 247, 0.98));
      color: #7d8892;
      border-style: dashed;
      transform: none;
    }

    .context-button strong {
      font-size: 0.95rem;
      letter-spacing: -0.02em;
    }

    .context-button span {
      color: var(--muted);
      font-size: 0.82rem;
      line-height: 1.45;
      overflow-wrap: anywhere;
    }

    .context-card {
      border: 1px solid rgba(188, 167, 140, 0.45);
      border-radius: 14px;
      padding: 10px 12px;
      background: rgba(255, 255, 255, 0.65);
      min-width: 0;
      overflow: hidden;
    }

    .context-card strong {
      display: block;
      font-size: 0.84rem;
      color: var(--muted);
      margin-bottom: 6px;
    }

    .context-card div {
      min-width: 0;
      max-width: 100%;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .sidebar-section-actions {
      display: grid;
      gap: 10px;
      margin-top: 12px;
    }

    .sidebar-section-actions .field {
      margin: 0;
    }

    body[data-current-view="home"] .workspace {
      grid-template-columns: minmax(0, 1fr);
    }

    body.show-debug[data-current-view="home"] .workspace {
      grid-template-columns: minmax(0, 1fr) 320px;
    }

    body[data-current-view="home"] .sidebar {
      display: none;
    }

    body[data-current-view="data-vault"] .workspace {
      grid-template-columns: minmax(0, 1fr);
    }

    body.show-debug[data-current-view="data-vault"] .workspace {
      grid-template-columns: minmax(0, 1fr) 320px;
    }

    body[data-current-view="data-vault"] .sidebar {
      display: none;
    }

    body[data-current-view="home"] .home-hero {
      display: none;
    }

    .surface-note {
      margin-top: 12px;
      padding: 12px 14px;
      border-radius: 16px;
      border: 1px dashed rgba(188, 167, 140, 0.62);
      background: rgba(255, 255, 255, 0.68);
      color: var(--muted);
      font-size: 0.85rem;
      line-height: 1.45;
    }

    .surface-note.is-info {
      border-color: rgba(188, 167, 140, 0.62);
      background: rgba(255, 255, 255, 0.68);
      color: var(--muted);
    }

    .surface-note.is-success {
      border-color: rgba(47, 125, 87, 0.34);
      background: rgba(223, 241, 232, 0.88);
      color: #24573f;
    }

    .surface-note.is-warn {
      border-color: rgba(155, 106, 29, 0.34);
      background: rgba(250, 235, 207, 0.88);
      color: #7d5518;
    }

    .surface-note.is-risk {
      border-color: rgba(155, 63, 63, 0.34);
      background: rgba(248, 223, 223, 0.9);
      color: #7c3232;
    }

    [hidden],
    .modal-overlay[hidden],
    #view-access [hidden] {
      display: none !important;
    }

    .modal-overlay {
      position: fixed;
      inset: 0;
      z-index: 60;
      display: grid;
      place-items: center;
      padding: 24px;
      background: rgba(16, 24, 32, 0.42);
      backdrop-filter: blur(10px);
    }

    .modal-card {
      width: min(460px, 100%);
      display: grid;
      gap: 16px;
      padding: 22px;
      border-radius: 24px;
      border: 1px solid rgba(188, 167, 140, 0.42);
      background: rgba(255, 252, 247, 0.98);
      box-shadow: 0 28px 70px rgba(16, 24, 32, 0.22);
    }

    .modal-copy {
      display: grid;
      gap: 8px;
    }

    .modal-copy h3 {
      margin: 0;
      font-size: 1.18rem;
      letter-spacing: -0.03em;
    }

    .modal-copy p {
      margin: 0;
      color: var(--muted);
      line-height: 1.5;
    }

    .modal-code {
      min-height: 46px;
      display: grid;
      place-items: center;
      padding: 10px 14px;
      border-radius: 14px;
      border: 1px solid rgba(128, 146, 176, 0.34);
      background: rgba(255, 255, 255, 0.7);
      color: var(--text);
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
      font-size: 1.25rem;
      font-weight: 800;
      letter-spacing: 0.08em;
    }

    .modal-field {
      display: grid;
      gap: 8px;
    }

    .modal-field label {
      font-size: 0.84rem;
      font-weight: 700;
      color: var(--text);
    }

    .modal-actions {
      display: flex;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
    }

    .main {
      display: grid;
      gap: 18px;
      min-width: 0;
    }

    .view {
      display: none;
      gap: 18px;
    }

    .view.active {
      display: grid;
    }

    .page-head {
      padding: 18px 20px;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
      background: var(--panel-strong);
      color: var(--text);
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.48);
      box-shadow: var(--shadow);
    }

    .page-head .section-copy {
      color: var(--muted);
      max-width: 70ch;
      margin-top: 6px;
    }

    .head-actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      position: relative;
      z-index: 1;
    }

    .summary-strip {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px;
    }

    .admin-summary-strip {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-status-strip {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .summary-card,
    .quick-card,
    .feature-card,
    .journey-card,
    .feed-card,
    .placeholder-card,
    .data-card {
      border: 1px solid rgba(188, 167, 140, 0.48);
      border-radius: 18px;
      padding: 16px;
      background: var(--panel-strong);
      box-shadow: var(--shadow);
    }

    .summary-card strong,
    .quick-card strong,
    .journey-card strong,
    .data-card strong {
      display: block;
      color: var(--muted);
      font-size: 0.8rem;
      margin-bottom: 8px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

    .summary-number {
      font-size: clamp(1.6rem, 2.5vw, 2.1rem);
      line-height: 1;
      letter-spacing: -0.05em;
      margin-bottom: 6px;
    }

    .status-card {
      display: grid;
      gap: 14px;
      align-content: start;
    }

    .status-card-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .status-card strong {
      margin-bottom: 10px;
    }

    .status-card-value {
      font-size: 1.06rem;
      line-height: 1.3;
      letter-spacing: -0.02em;
      font-weight: 700;
      color: var(--text);
    }

    .status-card-detail {
      margin: 0;
      color: var(--muted);
      line-height: 1.5;
      min-height: 3.1em;
    }

    .home-status-strip .summary-card,
    #home-signal .summary-card {
      padding: 12px 14px;
      border-radius: 16px;
      box-shadow: 0 8px 18px rgba(65, 47, 27, 0.05);
    }

    .home-status-strip .status-card {
      gap: 8px;
    }

    .home-status-strip .status-card-head {
      gap: 10px;
      align-items: flex-start;
    }

    .home-status-strip .status-card strong,
    #home-signal .summary-card strong {
      font-size: 0.72rem;
      margin-bottom: 4px;
      letter-spacing: 0.12em;
    }

    .home-status-strip .status-card-value {
      font-size: 0.98rem;
      line-height: 1.2;
      letter-spacing: -0.02em;
    }

    .home-status-strip .status-card-detail,
    #home-signal .summary-card .muted {
      font-size: 0.82rem;
      line-height: 1.35;
      color: var(--muted);
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
      min-height: 0;
    }

    .home-status-strip .badge,
    #home-signal .badge {
      min-width: 0;
      padding: 0.16rem 0.46rem;
      font-size: 0.72rem;
    }

    #home-signal .summary-card {
      display: grid;
      gap: 4px;
      align-content: start;
    }

    #home-signal .summary-number {
      margin-bottom: 0;
      font-size: clamp(1.5rem, 2vw, 1.8rem);
      line-height: 0.95;
    }

    .home-shell {
      display: grid;
      gap: 16px;
    }

    .home-start-panel,
    .home-focus-card,
    .home-data-card,
    .home-panel--quick-sync {
      background:
        linear-gradient(145deg, rgba(247, 249, 253, 0.54), rgba(224, 231, 243, 0.42)),
        var(--panel);
      box-shadow:
        14px 14px 30px rgba(150, 160, 185, 0.2),
        -14px -14px 30px rgba(255, 255, 255, 0.82);
    }

    .home-start-panel {
      display: grid;
      gap: 16px;
      padding: 20px 22px;
    }

    .home-start-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
    }

    .home-start-head h2 {
      margin: 0;
      font-size: clamp(1.35rem, 1.4vw, 1.75rem);
      letter-spacing: -0.03em;
      line-height: 1.12;
    }

    .home-quick-links,
    .home-panel-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 8px;
    }

    .home-quick-links .btn,
    .home-panel-actions .btn {
      min-height: 34px;
      padding: 0.42rem 0.72rem;
      border-radius: 14px;
      font-size: 0.78rem;
    }

    .home-metric-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
      gap: 10px;
    }

    .home-metric-card {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      grid-template-areas:
        "dot value"
        "dot label";
      column-gap: 9px;
      row-gap: 2px;
      align-items: center;
      min-width: 0;
      min-height: 68px;
      padding: 12px 13px;
      border: 1px solid rgba(255, 255, 255, 0.62);
      border-radius: 17px;
      background: rgba(237, 241, 247, 0.62);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.14),
        inset -5px -5px 12px rgba(255, 255, 255, 0.78);
    }

    .home-metric-card .home-status-dot {
      grid-area: dot;
      margin: 0;
    }

    .home-metric-card strong {
      grid-area: value;
      min-width: 0;
      color: #344057;
      font-size: 0.9rem;
      font-weight: 800;
      line-height: 1.2;
      overflow-wrap: anywhere;
    }

    .home-metric-card span:last-child {
      grid-area: label;
      min-width: 0;
      color: #6f7a92;
      font-size: 0.72rem;
      line-height: 1.28;
    }

    .home-ops-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
      gap: 16px;
      align-items: start;
    }

    .home-topline {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 10px;
      align-items: start;
    }

    .home-inspector {
      display: grid;
      gap: 8px;
    }

    .home-workspace-main,
    .home-workspace-side {
      display: grid;
      gap: 14px;
    }

    .home-rail,
    .home-focus-card,
    .home-compact-panel {
      padding: 18px 20px;
    }

    .home-rail {
      position: relative;
      overflow: hidden;
      display: grid;
      gap: 16px;
      background:
        radial-gradient(circle at top left, rgba(220, 239, 240, 0.82), transparent 34%),
        linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(252, 247, 240, 0.92));
    }

    .home-rail::after {
      content: "";
      position: absolute;
      right: -18px;
      bottom: -28px;
      width: 180px;
      height: 180px;
      border-radius: 999px;
      background: radial-gradient(circle, rgba(188, 167, 140, 0.14), transparent 68%);
      pointer-events: none;
    }

    .home-rail-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
    }

    .home-rail-copy {
      min-width: 0;
      position: relative;
      z-index: 1;
    }

    .home-rail h2 {
      margin: 0;
      font-size: clamp(1.45rem, 2.5vw, 2rem);
      letter-spacing: -0.04em;
      line-height: 1.05;
      max-width: 14ch;
    }

    .home-rail-copy .section-copy {
      margin-top: 10px;
      max-width: 60ch;
    }

    .home-rail--minimal {
      gap: 14px;
    }

    .home-rail--minimal .home-rail-head {
      display: block;
    }

    .home-rail--minimal h2 {
      max-width: 12ch;
    }

    .home-status-inline {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      padding-top: 14px;
      border-top: 1px solid rgba(188, 167, 140, 0.24);
      position: relative;
      z-index: 1;
    }

    .home-status-inline .home-context-chip {
      min-height: 34px;
      padding-inline: 0.8rem;
      border-color: rgba(11, 92, 99, 0.12);
      background: rgba(255, 255, 255, 0.88);
      color: var(--text);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.36);
    }

    .home-rail-context {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      gap: 8px;
      min-width: min(18rem, 100%);
      position: relative;
      z-index: 1;
    }

    .home-context-chip {
      border-color: rgba(11, 92, 99, 0.14);
      background: rgba(255, 255, 255, 0.74);
      color: var(--text);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.32);
    }

    .home-rail-footer {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(300px, 1.05fr);
      gap: 16px;
      align-items: end;
      padding-top: 16px;
      border-top: 1px solid rgba(188, 167, 140, 0.28);
      position: relative;
      z-index: 1;
    }

    .home-next-step {
      display: grid;
      gap: 4px;
      min-width: 0;
    }

    .home-next-step strong {
      color: var(--muted);
      font-size: 0.72rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .home-next-step p {
      margin: 0;
      color: var(--text);
      font-size: 0.94rem;
      line-height: 1.5;
      text-wrap: pretty;
    }

    .home-command-actions {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
    }

    .home-command-actions .action-tile {
      padding: 12px 14px;
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.84);
      box-shadow: none;
    }

    .home-command-actions .action-tile strong {
      font-size: 0.94rem;
    }

    .home-command-actions .action-tile span {
      font-size: 0.79rem;
      line-height: 1.36;
    }

    .home-focus-card {
      display: grid;
      gap: 10px;
    }

    .home-data-card {
      display: grid;
      gap: 14px;
      padding: 20px 22px 22px;
    }

    .home-focus-card .home-panel-head {
      gap: 14px;
    }

    .home-focus-card.is-calm {
      padding-top: 14px;
      padding-bottom: 14px;
      gap: 8px;
    }

    .home-focus-card.is-calm .home-panel-head {
      align-items: center;
      gap: 12px;
    }

    .home-focus-card.is-calm .section-kicker {
      margin-bottom: 4px;
    }

    .home-focus-card.is-calm .home-panel-head h3 {
      font-size: 1.06rem;
    }

    .home-focus-card.is-calm .home-panel-copy {
      margin-top: 2px;
      font-size: 0.8rem;
      max-width: 56ch;
    }

    .home-focus-card.is-calm .home-focus-list {
      padding-top: 8px;
      border-top: 1px solid rgba(155, 168, 196, 0.18);
    }

    .home-focus-card.is-calm .home-focus-item {
      padding: 0;
      gap: 10px;
      border-top: 0;
    }

    .home-focus-card.is-calm .home-focus-copy strong {
      font-size: 0.92rem;
    }

    .home-focus-card.is-calm .home-focus-copy span {
      margin-top: 2px;
      font-size: 0.8rem;
      line-height: 1.4;
    }

    .home-focus-list {
      display: grid;
      gap: 0;
    }

    .home-focus-item {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 12px;
      align-items: start;
      padding: 12px 0;
      border-top: 1px solid rgba(155, 168, 196, 0.18);
    }

    .home-focus-item:first-child {
      border-top: 0;
      padding-top: 0;
    }

    .home-focus-dot {
      width: 10px;
      height: 10px;
      margin-top: 6px;
      border-radius: 999px;
      background: var(--brand);
      box-shadow: 0 0 0 4px rgba(220, 239, 240, 0.44);
    }

    .home-focus-item[data-tone="ok"] .home-focus-dot {
      background: var(--ok);
      box-shadow: 0 0 0 4px rgba(220, 240, 228, 0.46);
    }

    .home-focus-item[data-tone="warn"] .home-focus-dot {
      background: var(--warn);
      box-shadow: 0 0 0 4px rgba(245, 227, 188, 0.55);
    }

    .home-focus-item[data-tone="risk"] .home-focus-dot {
      background: var(--risk);
      box-shadow: 0 0 0 4px rgba(246, 222, 218, 0.56);
    }

    .home-status-dot {
      width: 10px;
      height: 10px;
      border-radius: 999px;
      background: rgba(112, 127, 142, 0.42);
      box-shadow:
        3px 3px 8px rgba(150, 160, 185, 0.2),
        -3px -3px 8px rgba(255, 255, 255, 0.82);
    }

    .home-status-dot[data-tone="ok"] {
      background: var(--ok);
    }

    .home-status-dot[data-tone="warn"] {
      background: var(--warn);
    }

    .home-status-dot[data-tone="risk"] {
      background: var(--risk);
    }

    .home-status-dot[data-tone="brand"] {
      background: var(--brand);
    }

    .home-focus-copy {
      min-width: 0;
    }

    .home-focus-copy strong {
      display: block;
      font-size: 0.95rem;
      letter-spacing: -0.02em;
    }

    .home-focus-copy span {
      display: block;
      margin-top: 4px;
      color: var(--muted);
      font-size: 0.84rem;
      line-height: 1.45;
      text-wrap: pretty;
    }

    .home-compact-panel {
      display: grid;
      gap: 10px;
      background: rgba(255, 255, 255, 0.82);
    }

    .home-inspector .home-compact-panel {
      padding: 14px 16px;
    }

    .home-compact-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .home-compact-head h3 {
      margin: 0;
      font-size: 1rem;
      letter-spacing: -0.02em;
    }

    .home-inspector .section-kicker {
      margin-bottom: 4px;
    }

    .home-inspector .home-compact-head h3 {
      font-size: 0.94rem;
    }

    .home-compact-copy {
      margin-top: 3px;
      color: var(--muted);
      font-size: 0.79rem;
      line-height: 1.4;
    }

    .home-inspector .home-status-strip {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 8px;
    }

    .home-inspector #home-signal {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px;
    }

    .home-inspector .home-status-strip .summary-card,
    .home-inspector #home-signal .summary-card {
      padding: 10px 12px;
      border-radius: 14px;
      background: rgba(252, 250, 247, 0.92);
      box-shadow: none;
    }

    .home-inspector .home-status-strip .status-card {
      gap: 6px;
    }

    .home-inspector .home-status-strip .status-card-head {
      align-items: center;
    }

    .home-inspector .home-status-strip .status-card strong,
    .home-inspector #home-signal .summary-card strong {
      font-size: 0.68rem;
      letter-spacing: 0.14em;
      margin-bottom: 2px;
    }

    .home-inspector .home-status-strip .status-card-value {
      font-size: 0.92rem;
      line-height: 1.2;
    }

    .home-inspector .home-status-strip .status-card-detail,
    .home-inspector #home-signal .summary-card .muted {
      font-size: 0.78rem;
      line-height: 1.32;
      -webkit-line-clamp: 1;
    }

    .home-inspector #home-signal .summary-card {
      gap: 3px;
    }

    .home-inspector #home-signal .summary-number {
      font-size: 1.12rem;
      line-height: 1;
    }

    .home-inspector .badge {
      font-size: 0.68rem;
      padding: 0.16rem 0.42rem;
    }

    .home-workspace-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.18fr) minmax(320px, 0.82fr);
      gap: 12px;
      align-items: start;
    }

    .home-workspace-grid.is-single-column {
      grid-template-columns: minmax(0, 1fr);
    }

    .home-panel {
      padding: 20px 22px;
      display: grid;
      gap: 16px;
    }

    .home-workspace-side .home-panel {
      padding: 18px 20px;
    }

    .home-panel-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
    }

    .section-kicker {
      margin: 0 0 10px;
      color: var(--muted);
      font-size: 0.78rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }

    .home-panel-head h3 {
      margin: 0;
      font-size: clamp(1.1rem, 1.6vw, 1.45rem);
      letter-spacing: -0.03em;
    }

    .home-panel-head--compact {
      align-items: center;
    }

    .home-panel-copy {
      margin-top: 6px;
      max-width: 64ch;
      font-size: 0.85rem;
    }

    .home-focus-actions {
      margin-top: 10px;
    }

    .home-focus-actions .btn {
      min-height: 40px;
      padding-inline: 0.9rem;
    }

    #home-data-overview .home-panel-copy,
    #home-sources .home-panel-copy {
      max-width: 44ch;
    }

    #home-requests,
    #home-grants,
    #home-data-overview,
    #home-sources {
      position: relative;
      overflow: hidden;
    }

    #home-requests {
      background: rgba(237, 241, 247, 0.62);
    }

    #home-grants,
    #home-data-overview,
    #home-sources {
      background:
        linear-gradient(145deg, rgba(247, 249, 253, 0.54), rgba(224, 231, 243, 0.42)),
        var(--panel);
    }

    .home-grant-list {
      display: grid;
      border-top: 1px solid rgba(188, 167, 140, 0.34);
    }

    .home-grant-item {
      border-bottom: 1px solid rgba(188, 167, 140, 0.34);
    }

    .home-grant-summary {
      list-style: none;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 18px;
      align-items: start;
      padding: 16px 0;
      cursor: pointer;
    }

    .home-grant-summary::-webkit-details-marker {
      display: none;
    }

    .home-grant-summary::after {
      content: "+";
      color: var(--muted);
      font-size: 2rem;
      line-height: 1;
      margin-top: -2px;
    }

    .home-grant-item[open] .home-grant-summary::after {
      content: "-";
    }

    .home-grant-main {
      min-width: 0;
      display: grid;
      gap: 12px;
    }

    .home-grant-title-row {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 10px;
    }

    .home-grant-title {
      margin: 0;
      font-size: 1.18rem;
      letter-spacing: -0.03em;
    }

    .home-grant-detail {
      display: grid;
      gap: 14px;
      padding: 0 0 22px;
    }

    .home-grant-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
    }

    .home-grant-cell strong {
      display: block;
      margin-bottom: 10px;
      color: var(--muted);
      font-size: 0.8rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .home-grant-pills {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .home-request-list {
      display: grid;
      gap: 18px;
    }

    .home-request-card {
      border: 1px solid rgba(188, 167, 140, 0.38);
      border-radius: 22px;
      padding: 18px 20px;
      background: rgba(255, 255, 255, 0.9);
    }

    .home-request-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
      margin-top: 16px;
    }

    .home-request-cell strong {
      display: block;
      margin-bottom: 12px;
      color: var(--muted);
      font-size: 0.8rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .home-source-list {
      display: grid;
      gap: 12px;
    }

    .home-source-ready-list {
      display: grid;
      gap: 10px;
    }

    .home-source-card {
      border: 1px solid rgba(255, 255, 255, 0.62);
      border-radius: 18px;
      padding: 13px 15px;
      background: rgba(237, 241, 247, 0.62);
      display: grid;
      gap: 9px;
      box-shadow:
        inset 4px 4px 10px rgba(150, 160, 185, 0.12),
        inset -4px -4px 10px rgba(255, 255, 255, 0.76);
    }

    .home-source-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 14px;
    }

    .home-source-summary {
      min-width: 0;
      display: grid;
      gap: 6px;
    }

    .home-source-head h4 {
      margin: 0;
      font-size: 0.94rem;
      letter-spacing: -0.02em;
    }

    .home-source-summary .muted {
      font-size: 0.76rem;
    }

    .home-source-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .home-source-actions {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }

    .home-source-actions-group {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .home-panel--quick-sync .home-panel-copy {
      max-width: 52ch;
    }

    .home-source-quick-sync {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    .home-source-sync-icon {
      width: 14px;
      height: 14px;
      border: 2px solid currentColor;
      border-right-color: transparent;
      border-radius: 50%;
      position: relative;
      flex-shrink: 0;
    }

    .home-source-sync-icon::after {
      content: "";
      position: absolute;
      top: -3px;
      right: -1px;
      width: 5px;
      height: 5px;
      border-top: 2px solid currentColor;
      border-right: 2px solid currentColor;
      transform: rotate(35deg);
    }

    .home-source-quick-sync.is-running .home-source-sync-icon {
      animation: homeQuickSyncSpin 700ms linear infinite;
    }

    .home-source-inline-status {
      margin-top: 2px;
    }

    .home-data-signal-list {
      display: grid;
      gap: 9px;
    }

    .home-data-signal {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 10px;
      align-items: center;
      min-width: 0;
      padding: 11px 12px;
      border-radius: 16px;
      background: rgba(237, 241, 247, 0.56);
      box-shadow:
        inset 4px 4px 9px rgba(150, 160, 185, 0.12),
        inset -4px -4px 9px rgba(255, 255, 255, 0.76);
    }

    .home-data-signal strong,
    .home-data-signal span {
      display: block;
      min-width: 0;
    }

    .home-data-signal strong {
      color: #344057;
      font-size: 1rem;
      font-weight: 800;
      line-height: 1.15;
    }

    .home-data-signal span {
      color: #6f7a92;
      font-size: 0.76rem;
      line-height: 1.36;
    }

    @keyframes homeQuickSyncSpin {
      from {
        transform: rotate(0deg);
      }
      to {
        transform: rotate(360deg);
      }
    }

    .home-data-list {
      display: grid;
      gap: 10px;
    }

    .home-data-summary {
      display: grid;
      gap: 10px;
      padding: 14px 16px;
      border: 1px solid rgba(188, 167, 140, 0.3);
      border-radius: 18px;
      background: linear-gradient(180deg, rgba(248, 249, 252, 0.92), rgba(255, 255, 255, 0.96));
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3);
    }

    .home-data-summary-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .home-data-summary-copy {
      min-width: 0;
      display: grid;
      gap: 4px;
    }

    .home-data-name {
      margin: 0;
      font-size: 1.02rem;
      letter-spacing: -0.03em;
      font-weight: 800;
      color: var(--text);
    }

    .home-data-key {
      color: #66788a;
      font-size: 0.84rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    .home-data-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .home-data-summary-foot {
      display: grid;
      gap: 6px;
      padding-top: 10px;
      border-top: 1px solid rgba(188, 167, 140, 0.2);
    }

    .home-data-summary-foot .request-copy {
      font-size: 0.82rem;
      line-height: 1.4;
    }

    .home-data-summary-foot .mono {
      color: #6e7b87;
      font-size: 0.8rem;
      overflow-wrap: anywhere;
    }

    .home-data-table {
      display: grid;
      border: 1px solid rgba(188, 167, 140, 0.32);
      border-radius: 22px;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.9);
    }

    .home-data-header,
    .home-data-row {
      display: grid;
      grid-template-columns: minmax(0, 1.5fr) 140px 180px;
      gap: 18px;
      align-items: start;
      padding: 18px 20px;
    }

    .home-data-header {
      background: rgba(233, 239, 247, 0.52);
      border-bottom: 1px solid rgba(188, 167, 140, 0.28);
      color: var(--muted);
      font-size: 0.8rem;
      letter-spacing: 0.16em;
      text-transform: uppercase;
    }

    .home-data-row + .home-data-row {
      border-top: 1px solid rgba(188, 167, 140, 0.26);
    }

    .home-data-cell {
      min-width: 0;
      display: grid;
      gap: 8px;
      align-content: start;
    }

    .home-data-type {
      margin: 0;
      font-size: 1.1rem;
      letter-spacing: -0.02em;
      font-weight: 700;
      color: var(--text);
    }

    .home-data-number {
      font-size: 1.22rem;
      line-height: 1;
      letter-spacing: -0.03em;
      color: var(--text);
      font-weight: 700;
    }

    .grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }

    #view-access,
    #view-access .grid-2,
    #view-access .cluster,
    #view-access form,
    #view-access details,
    #view-access .row,
    #view-access .field,
    #view-access .stack-card,
    #view-access .surface-note,
    #view-access .request-list {
      min-width: 0;
      max-width: 100%;
    }

    #view-access .request-list {
      gap: 10px;
    }

    #view-access .cluster {
      overflow: hidden;
    }

    #view-access .row {
      grid-template-columns: minmax(0, 1fr);
      align-items: start;
    }

    #view-access input,
    #view-access select,
    #view-access textarea {
      min-width: 0;
      max-width: 100%;
    }

    #view-access select[multiple] {
      min-height: 230px;
      padding: 12px 12px;
      border: 0;
      border-radius: 18px;
      background: rgba(233, 238, 246, 0.74);
      color: var(--text);
      box-shadow: inset 8px 8px 18px rgba(150, 160, 185, 0.28), inset -8px -8px 18px rgba(255, 255, 255, 0.92);
      scrollbar-color: rgba(109, 120, 144, 0.72) transparent;
    }

    #view-access select[multiple] option {
      margin: 3px 0;
      padding: 0.42rem 0.56rem;
      border-radius: 12px;
      color: var(--text);
      background: transparent;
      font-weight: 500;
    }

    #view-access select[multiple] option:checked {
      color: var(--brand);
      background: linear-gradient(145deg, rgba(216, 232, 255, 0.92), rgba(242, 247, 253, 0.82));
      box-shadow: inset 0 0 0 999px rgba(216, 232, 255, 0.82);
      font-weight: 600;
    }

    #view-access select[multiple] option:hover {
      background: rgba(244, 247, 251, 0.72);
    }

    #view-access details {
      width: 100%;
    }

    #view-access summary {
      cursor: pointer;
      max-width: 100%;
      overflow-wrap: anywhere;
    }

    #view-access .actions,
    #view-access .toolbar {
      min-width: 0;
    }

    #view-access .section-title .access-action-toolbar {
      display: grid;
      grid-template-columns: repeat(2, minmax(128px, 1fr));
      align-items: stretch;
      gap: 8px;
      min-width: min(100%, 260px);
      max-width: 330px;
    }

    #view-access .access-action {
      display: grid;
      align-content: start;
      min-width: 0;
    }

    #view-access .access-action .btn {
      width: 100%;
      min-height: 34px;
      padding: 0.4rem 0.68rem;
      border-radius: 8px;
      border-color: rgba(255, 255, 255, 0.74);
      background: linear-gradient(145deg, rgba(247, 250, 254, 0.96), rgba(223, 230, 241, 0.88));
      color: var(--brand);
      box-shadow: 7px 7px 16px rgba(150, 160, 185, 0.26), -7px -7px 16px rgba(255, 255, 255, 0.9);
      white-space: normal;
      line-height: 1.15;
      text-align: center;
      font-size: 0.82rem;
    }

    #view-access .access-action .btn:not(.secondary) {
      border-color: rgba(255, 255, 255, 0.76);
      background: linear-gradient(145deg, rgba(79, 190, 224, 0.88), rgba(18, 126, 218, 0.92));
      color: #fff;
      box-shadow: 8px 8px 18px rgba(95, 130, 175, 0.28), -7px -7px 16px rgba(255, 255, 255, 0.84);
    }

    #view-access .access-action .btn:hover,
    #view-access .access-action .btn:focus-visible {
      transform: translateY(-1px);
      box-shadow: 9px 9px 18px rgba(150, 160, 185, 0.3), -8px -8px 18px rgba(255, 255, 255, 0.94);
    }

    #view-access .access-action .btn:active {
      transform: none;
      box-shadow: inset 5px 5px 10px rgba(150, 160, 185, 0.28), inset -5px -5px 10px rgba(255, 255, 255, 0.86);
    }

    #view-access .access-list-section {
      min-width: 0;
      max-width: 100%;
      display: grid;
      gap: 12px;
    }

    #view-access .access-shared-data-panel {
      display: grid;
      gap: 12px;
      padding: 22px 24px;
    }

    #view-access .access-shared-data-panel .section-title {
      align-items: start;
      gap: 18px;
      margin-bottom: 4px;
    }

    #view-access .access-shared-data-panel .access-section-status {
      margin-top: 8px;
    }

    #view-access .access-shared-data-panel .access-list-section {
      gap: 10px;
    }

    #view-access .access-shared-data-panel .empty-state {
      min-height: 62px;
      display: grid;
      place-items: center;
      padding: 16px 20px;
      border: 0;
      border-radius: 18px;
      background: rgba(233, 238, 246, 0.68);
      box-shadow:
        inset 7px 7px 15px rgba(150, 160, 185, 0.22),
        inset -7px -7px 15px rgba(255, 255, 255, 0.92);
      color: var(--muted);
      font-size: 0.88rem;
      text-align: center;
    }

    #view-access .actions .btn,
    #view-access .toolbar .btn,
    #view-access .head-actions .btn {
      max-width: 100%;
      white-space: normal;
    }

    #view-access input[type="checkbox"] {
      appearance: none;
      -webkit-appearance: none;
      position: relative;
      width: 20px;
      min-width: 20px;
      height: 20px;
      min-height: 20px;
      padding: 0;
      border: 1px solid rgba(255, 255, 255, 0.68);
      border-radius: 6px;
      background: rgba(233, 238, 246, 0.8);
      box-shadow: var(--neu-pressed);
      accent-color: var(--accent);
    }

    #view-access input[type="checkbox"]:checked {
      background: linear-gradient(145deg, var(--accent), var(--brand));
      box-shadow: 4px 4px 10px rgba(150, 160, 185, 0.3), -4px -4px 10px rgba(255, 255, 255, 0.9);
    }

    #view-access input[type="checkbox"]:checked::after {
      content: "";
      position: absolute;
      left: 6px;
      top: 3px;
      width: 5px;
      height: 10px;
      border: solid #ffffff;
      border-width: 0 2px 2px 0;
      transform: rotate(45deg);
    }

    #view-access input[type="range"] {
      appearance: none;
      -webkit-appearance: none;
      width: 100%;
      height: 14px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: linear-gradient(
        90deg,
        var(--accent) 0%,
        var(--brand) var(--range-progress, 50%),
        rgba(226, 232, 243, 0.92) var(--range-progress, 50%),
        rgba(226, 232, 243, 0.92) 100%
      );
      box-shadow: inset 4px 4px 8px rgba(150, 160, 185, 0.34), inset -4px -4px 8px rgba(255, 255, 255, 0.96);
      accent-color: var(--accent);
    }

    #view-access input[type="range"]::-webkit-slider-runnable-track {
      height: 14px;
      border-radius: 999px;
      background: transparent;
    }

    #view-access input[type="range"]::-webkit-slider-thumb {
      appearance: none;
      width: 28px;
      height: 28px;
      margin-top: -7px;
      border: 0;
      border-radius: 50%;
      background: linear-gradient(145deg, var(--accent), var(--brand));
      box-shadow: 6px 6px 13px rgba(150, 160, 185, 0.36), -6px -6px 13px rgba(255, 255, 255, 0.94);
      cursor: pointer;
    }

    #view-access input[type="range"]::-moz-range-track {
      height: 14px;
      border-radius: 999px;
      background: rgba(226, 232, 243, 0.92);
      box-shadow: inset 4px 4px 8px rgba(150, 160, 185, 0.34), inset -4px -4px 8px rgba(255, 255, 255, 0.96);
    }

    #view-access input[type="range"]::-moz-range-progress {
      height: 14px;
      border-radius: 999px;
      background: linear-gradient(90deg, var(--accent), var(--brand));
    }

    #view-access input[type="range"]::-moz-range-thumb {
      width: 28px;
      height: 28px;
      border: 0;
      border-radius: 50%;
      background: linear-gradient(145deg, var(--accent), var(--brand));
      box-shadow: 6px 6px 13px rgba(150, 160, 185, 0.36), -6px -6px 13px rgba(255, 255, 255, 0.94);
      cursor: pointer;
    }

    .check-control {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      color: var(--text);
      font-weight: 700;
      line-height: 1.4;
    }

    .check-control span {
      display: grid;
      gap: 3px;
    }

    .check-control small {
      color: var(--muted);
      font-size: 0.82rem;
      font-weight: 500;
    }

    #view-access #accessOwnerSections {
      align-items: start;
    }

    #view-access {
      --access-wizard-width: 980px;
    }

    #view-access .access-wizard-progress {
      position: relative;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0;
      width: 100%;
      max-width: var(--access-wizard-width);
      margin: 0 auto 24px;
      padding: 10px 18px 9px;
      border: 0;
      border-radius: 999px;
      background: linear-gradient(145deg, rgba(239, 243, 249, 0.94), rgba(226, 233, 244, 0.88));
      box-shadow:
        inset 9px 9px 18px rgba(150, 160, 185, 0.28),
        inset -9px -9px 18px rgba(255, 255, 255, 0.94),
        1px 1px 1px rgba(255, 255, 255, 0.78);
    }

    #view-access .access-wizard-progress::before {
      content: "";
      position: absolute;
      left: 62px;
      right: 62px;
      top: 31px;
      height: 5px;
      border-radius: 999px;
      background: rgba(219, 226, 239, 0.84);
      box-shadow:
        inset 4px 4px 8px rgba(150, 160, 185, 0.3),
        inset -4px -4px 8px rgba(255, 255, 255, 0.94);
    }

    #view-access .access-wizard-progress-step {
      position: relative;
      display: grid;
      justify-items: center;
      gap: 6px;
      align-items: center;
      min-height: 62px;
      padding: 0.1rem 0.4rem;
      border-radius: 999px;
      border: 0;
      background: transparent;
      color: var(--muted);
      box-shadow: none;
      font: inherit;
      font-size: 0.74rem;
      font-weight: 600;
      line-height: 1.1;
      cursor: pointer;
    }

    #view-access .access-wizard-progress-step:not(:last-child)::after {
      content: "";
      position: absolute;
      z-index: 1;
      left: calc(50% + 23px);
      right: calc(-50% + 23px);
      top: 21px;
      height: 5px;
      border-radius: 999px;
      background: transparent;
      transition: background 0.18s ease;
    }

    #view-access .access-wizard-progress-step.is-complete:not(:last-child)::after {
      background: linear-gradient(90deg, #35bfd9, var(--brand));
      box-shadow: 0 0 10px rgba(32, 117, 232, 0.12);
    }

    #view-access .access-wizard-progress-step > span:not(.access-step-icon) {
      position: relative;
      z-index: 3;
      max-width: 100%;
      overflow-wrap: anywhere;
      color: inherit;
    }

    #view-access .access-wizard-progress-step .access-step-icon {
      position: relative;
      z-index: 3;
      width: 42px;
      height: 42px;
      background: linear-gradient(145deg, rgba(244, 248, 252, 0.94), rgba(224, 231, 242, 0.9));
      color: var(--muted);
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.3),
        -5px -5px 12px rgba(255, 255, 255, 0.92),
        inset 1px 1px 1px rgba(255, 255, 255, 0.72);
      font-size: 0.92rem;
    }

    #view-access .access-wizard-progress-step[disabled] {
      cursor: default;
      opacity: 0.62;
    }

    #view-access .access-wizard-progress-step.is-active {
      color: var(--brand);
    }

    #view-access .access-wizard-progress-step.is-active .access-step-icon {
      color: var(--brand);
      background: linear-gradient(145deg, rgba(238, 245, 253, 0.94), rgba(225, 234, 246, 0.9));
      box-shadow:
        inset 6px 6px 12px rgba(150, 160, 185, 0.3),
        inset -6px -6px 12px rgba(255, 255, 255, 0.94),
        0 0 0 2px rgba(32, 117, 232, 0.08);
    }

    #view-access .access-wizard-progress-step.is-complete {
      color: var(--brand);
    }

    #view-access .access-wizard-progress-step.is-complete .access-step-icon {
      color: #ffffff;
      background: linear-gradient(145deg, #35bfd9, var(--brand));
      box-shadow:
        6px 6px 14px rgba(150, 160, 185, 0.34),
        -5px -5px 13px rgba(255, 255, 255, 0.9),
        inset 1px 1px 1px rgba(255, 255, 255, 0.28);
    }

    #view-access .access-mode-bar {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 2px;
    }

    #view-access .access-direction-step .access-mode-bar {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
      margin-top: 0;
    }

    #view-access .access-mode-button {
      gap: 10px;
      min-height: 44px;
      justify-content: center;
      padding: 0.6rem 1rem;
      border-radius: 999px;
      border-color: rgba(255, 255, 255, 0.64);
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.96), rgba(225, 232, 243, 0.9));
      box-shadow: var(--neu-raised-sm);
    }

    #view-access .access-direction-step .access-mode-button {
      justify-content: flex-start;
      display: grid;
      grid-template-columns: 56px minmax(0, 1fr);
      grid-template-rows: auto auto;
      gap: 5px 16px;
      min-height: 116px;
      padding: 1.25rem 1.35rem;
      border-radius: 18px;
      text-align: left;
      align-items: center;
      border: 0;
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.92), rgba(226, 233, 244, 0.84));
      box-shadow: 10px 10px 22px rgba(150, 160, 185, 0.28), -10px -10px 22px rgba(255, 255, 255, 0.86);
      transition: box-shadow 0.18s ease, transform 0.18s ease, background 0.18s ease;
    }

    #view-access .access-direction-step .access-mode-button.is-active {
      background: linear-gradient(145deg, rgba(224, 241, 255, 0.88), rgba(239, 246, 255, 0.78));
      box-shadow: inset 8px 8px 16px rgba(150, 160, 185, 0.3), inset -8px -8px 16px rgba(255, 255, 255, 0.9);
      transform: none;
    }

    #view-access .access-mode-button strong {
      font-size: 0.94rem;
    }

    #view-access .access-mode-button > span:not(.access-choice-icon) {
      display: none;
    }

    #view-access .access-direction-step .access-mode-button > span:not(.access-choice-icon) {
      display: block;
      grid-column: 2;
      grid-row: 2;
      color: var(--muted);
      font-size: 0.95rem;
      font-weight: 500;
      line-height: 1.35;
      overflow-wrap: normal;
      word-break: normal;
    }

    #view-access .access-direction-step .access-mode-button > strong {
      grid-column: 2;
      grid-row: 1;
      align-self: end;
      color: var(--text);
      font-size: 1.05rem;
      line-height: 1.15;
      overflow-wrap: normal;
      word-break: normal;
    }

    #view-access .access-direction-step .access-mode-button > .access-choice-icon {
      grid-column: 1;
      grid-row: 1 / span 2;
      align-self: center;
      width: 48px;
      height: 48px;
      font-size: 1.05rem;
    }

    #view-access .access-layout {
      display: grid;
      grid-template-columns: minmax(320px, 0.84fr) minmax(420px, 1.16fr);
      gap: 18px;
      align-items: start;
    }

    #view-access .access-owner-flow-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 18px;
      align-items: start;
      min-width: 0;
    }

    #view-access .access-direction-panel {
      display: grid;
      gap: 0;
      width: 100%;
      max-width: var(--access-wizard-width);
      margin: 0 auto 18px;
      padding: 22px;
      border: 1px solid rgba(255, 255, 255, 0.72);
      border-radius: 24px;
      background: linear-gradient(145deg, rgba(244, 247, 251, 0.86), rgba(224, 231, 241, 0.76));
      box-shadow: 16px 16px 34px rgba(150, 160, 185, 0.3), -16px -16px 34px rgba(255, 255, 255, 0.86);
    }

    #view-access .access-direction-step {
      min-height: auto;
      padding: 30px;
      border: 0;
      border-radius: 20px;
      background: rgba(233, 238, 246, 0.58);
      box-shadow: inset 9px 9px 20px rgba(150, 160, 185, 0.24), inset -9px -9px 20px rgba(255, 255, 255, 0.88);
    }

    #view-access .access-primary-stack,
    .access-side-stack {
      display: grid;
      gap: 18px;
      min-width: 0;
    }

    #view-access .access-list-section {
      display: grid;
      gap: 10px;
    }

    #view-access .access-list-section > strong {
      display: block;
      color: var(--text);
      font-size: 0.96rem;
      letter-spacing: -0.02em;
    }

    #view-access .access-workflow-panel {
      display: grid;
      gap: 18px;
      width: 100%;
      max-width: var(--access-wizard-width);
      margin: 0 auto;
      padding: 22px;
      border: 1px solid rgba(255, 255, 255, 0.72);
      border-radius: 24px;
      background: linear-gradient(145deg, rgba(244, 247, 251, 0.86), rgba(224, 231, 241, 0.76));
      box-shadow: 16px 16px 34px rgba(150, 160, 185, 0.3), -16px -16px 34px rgba(255, 255, 255, 0.86);
    }

    #view-access .access-workflow-panel .section-title {
      width: 100%;
      margin: 0 auto;
    }

    #view-access .access-flow-form {
      display: grid;
      gap: 18px;
    }

    #view-access .access-flow-steps {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      justify-content: center;
      gap: 16px;
      border: 0;
      border-radius: 0;
      overflow: visible;
      background: transparent;
    }

    #view-access .access-flow-step {
      display: grid;
      align-content: start;
      gap: 18px;
      min-width: 0;
      min-height: 430px;
      padding: 26px;
      border: 0;
      border-radius: 20px;
      border-left: 0;
      background: rgba(233, 238, 246, 0.58);
      box-shadow: inset 9px 9px 20px rgba(150, 160, 185, 0.24), inset -9px -9px 20px rgba(255, 255, 255, 0.88);
    }

    #view-access .access-flow-step:first-child {
      border-left: 0;
    }

    #view-access .access-step-head {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 10px;
      align-items: center;
      min-width: 0;
    }

    #view-access .access-step-index,
    #view-access .access-step-icon {
      display: inline-grid;
      place-items: center;
      width: 38px;
      height: 38px;
      border-radius: 50%;
      background: var(--brand-soft);
      color: var(--brand);
      font-weight: 800;
      font-size: 1rem;
      box-shadow: var(--neu-raised-sm);
    }

    #view-access .access-step-head h4 {
      margin: 0;
      color: var(--text);
      font-size: 1rem;
      letter-spacing: -0.02em;
    }

    #view-access .access-step-head h3 {
      margin: 0;
      color: var(--text);
      font-size: 1rem;
      letter-spacing: -0.02em;
    }

    #view-access .access-form-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
      align-items: start;
      min-width: 0;
    }

    #view-access .access-form-grid .full,
    #view-access .access-confirm-actions,
    #view-access .access-wizard-actions {
      grid-column: 1 / -1;
    }

    #view-access .access-flow-step .scope-summary-card {
      margin-top: 0;
      padding: 0;
      border: 0;
      background: transparent;
    }

    #view-access .access-confirm-actions,
    #view-access .access-wizard-actions {
      margin-top: 0;
      justify-content: space-between;
    }

    #view-access .access-review-shell {
      display: grid;
      gap: 16px;
      min-width: 0;
    }

    #view-access .access-review-status {
      margin: 0;
      padding: 12px 16px;
      border-radius: 16px;
      color: var(--muted);
      background: rgba(233, 238, 246, 0.66);
      box-shadow: inset 7px 7px 14px rgba(150, 160, 185, 0.26), inset -7px -7px 14px rgba(255, 255, 255, 0.92);
      font-weight: 400;
    }

    #view-access .access-progress {
      display: grid;
      gap: 10px;
      min-width: 0;
      padding: 14px 16px;
      border: 1px solid rgba(255, 255, 255, 0.66);
      border-radius: 18px;
      background: rgba(238, 242, 248, 0.78);
      box-shadow: var(--neu-pressed);
    }

    #view-access .access-progress-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: center;
      color: var(--muted);
      font-size: 0.95rem;
      font-weight: 400;
      line-height: 1.35;
    }

    #view-access .access-progress-head span:first-child {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    #view-access .access-progress-head span:last-child {
      color: var(--brand);
      font-size: 0.86rem;
      font-weight: 600;
      white-space: nowrap;
    }

    #view-access .access-progress-track {
      position: relative;
      height: 12px;
      overflow: hidden;
      border-radius: 999px;
      background: rgba(226, 232, 243, 0.88);
      box-shadow: inset 4px 4px 8px rgba(150, 160, 185, 0.34), inset -4px -4px 8px rgba(255, 255, 255, 0.94);
    }

    #view-access .access-progress-bar {
      position: relative;
      width: 0%;
      height: 100%;
      overflow: hidden;
      border-radius: inherit;
      background: linear-gradient(90deg, var(--accent), var(--brand));
      box-shadow: 0 0 14px rgba(32, 117, 232, 0.26);
      transition: width 0.28s ease;
    }

    #view-access .access-progress.is-active .access-progress-bar::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.42), transparent);
      animation: access-progress-glint 1.2s ease-in-out infinite;
    }

    #view-access .access-progress.is-complete .access-progress-bar {
      background: linear-gradient(90deg, var(--accent), var(--ok));
    }

    #view-access .access-progress.is-error .access-progress-bar {
      background: linear-gradient(90deg, var(--warn), var(--risk));
    }

    #view-access .access-progress.is-error .access-progress-head span:last-child {
      color: var(--risk);
    }

    @keyframes access-progress-glint {
      0% { transform: translateX(-100%); }
      100% { transform: translateX(100%); }
    }

    #view-access .access-review-grid {
      display: grid;
      gap: 14px;
      min-width: 0;
    }

    #view-access .access-review-section {
      display: grid;
      gap: 12px;
      min-width: 0;
      padding: 20px;
      border: 0;
      border-radius: 20px;
      background: rgba(233, 238, 246, 0.6);
      box-shadow: inset 8px 8px 18px rgba(150, 160, 185, 0.22), inset -8px -8px 18px rgba(255, 255, 255, 0.88);
    }

    #view-access .access-review-section-label,
    #view-access .access-review-kicker {
      color: var(--muted);
      font-size: 0.76rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    #view-access .access-review-summary {
      display: grid;
      gap: 14px;
      min-width: 0;
    }

    #view-access .access-review-main {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 14px;
      align-items: center;
      min-width: 0;
    }

    #view-access .access-review-title {
      margin-top: 4px;
      color: var(--text);
      font-size: 1.04rem;
      font-weight: 600;
      line-height: 1.18;
      overflow-wrap: anywhere;
    }

    #view-access .access-review-state {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 34px;
      max-width: 100%;
      padding: 0.36rem 0.72rem;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.68);
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.94), rgba(226, 233, 244, 0.86));
      color: var(--muted);
      box-shadow: 5px 5px 12px rgba(150, 160, 185, 0.3), -5px -5px 12px rgba(255, 255, 255, 0.9);
      font-size: 0.86rem;
      font-weight: 600;
      white-space: nowrap;
    }

    #view-access .access-review-state.is-ready {
      color: var(--ok);
      background: linear-gradient(145deg, rgba(223, 244, 237, 0.9), rgba(238, 249, 246, 0.78));
    }

    #view-access .access-review-state.is-waiting {
      color: var(--warn);
      background: linear-gradient(145deg, rgba(247, 237, 206, 0.9), rgba(250, 246, 233, 0.78));
    }

    #view-access .access-review-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      min-width: 0;
    }

    #view-access .access-review-chip {
      display: inline-flex;
      align-items: center;
      min-height: 32px;
      max-width: 100%;
      padding: 0.34rem 0.72rem;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.68);
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.94), rgba(226, 233, 244, 0.86));
      color: var(--muted);
      box-shadow: 5px 5px 12px rgba(150, 160, 185, 0.28), -5px -5px 12px rgba(255, 255, 255, 0.9);
      font-size: 0.86rem;
      font-weight: 600;
      overflow-wrap: anywhere;
    }

    #view-access .access-review-note {
      color: var(--muted);
      font-size: 0.9rem;
      font-weight: 400;
      line-height: 1.4;
    }

    #view-access .access-confirm-actions {
      display: grid;
      grid-template-columns: minmax(140px, 0.7fr) minmax(280px, 1.5fr);
      gap: 16px;
      align-items: center;
    }

    #view-access .access-confirm-actions .btn {
      width: 100%;
      min-height: 52px;
      font-weight: 600;
      border-radius: 18px;
    }

    #view-access .access-confirm-actions .btn.secondary {
      font-weight: 500;
      border-color: rgba(255, 255, 255, 0.68);
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.94), rgba(226, 233, 244, 0.86));
      box-shadow: 7px 7px 16px rgba(150, 160, 185, 0.32), -7px -7px 16px rgba(255, 255, 255, 0.92);
    }

    #view-access #actor-request-section.access-workflow-panel {
      gap: 16px;
      padding: 20px 22px;
    }

    #view-access #actor-request-section .access-flow-form {
      gap: 12px;
    }

    #view-access #actor-request-section .access-flow-step {
      min-height: auto;
      gap: 16px;
      padding: 24px 26px;
      border-radius: 20px;
      background: rgba(233, 238, 246, 0.62);
      box-shadow:
        inset 8px 8px 18px rgba(150, 160, 185, 0.22),
        inset -8px -8px 18px rgba(255, 255, 255, 0.9);
    }

    #view-access #actor-request-section .access-step-icon {
      width: 36px;
      height: 36px;
      font-size: 0.94rem;
    }

    #view-access #actor-request-section .access-section-status {
      margin: 0;
    }

    #view-access #actor-request-section .scope-summary-card {
      gap: 8px;
      padding: 12px;
      border-radius: 8px;
      border: 0;
      background: rgba(233, 238, 246, 0.72);
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.2),
        inset -6px -6px 14px rgba(255, 255, 255, 0.9);
    }

    #view-access #actor-request-section .scope-summary-card > strong {
      font-size: 0.72rem;
    }

    #view-access #actor-request-section .scope-summary {
      gap: 7px;
    }

    #view-access #actor-request-section .scope-chip {
      min-height: 26px;
      padding: 0.28rem 0.56rem;
      border-color: rgba(255, 255, 255, 0.7);
      background: linear-gradient(145deg, rgba(247, 250, 254, 0.96), rgba(224, 231, 242, 0.88));
      box-shadow: 5px 5px 12px rgba(150, 160, 185, 0.22), -5px -5px 12px rgba(255, 255, 255, 0.88);
      font-size: 0.78rem;
    }

    #view-access #actor-request-section .access-confirm-actions {
      grid-template-columns: minmax(130px, 0.65fr) minmax(240px, 1.35fr);
      gap: 14px;
    }

    #view-access #actor-request-section .access-confirm-actions .btn {
      min-height: 44px;
      border-radius: 8px;
      font-size: 0.92rem;
    }

    #view-access .access-ledger-panel {
      display: grid;
      gap: 12px;
      padding: 22px 24px;
    }

    #view-access .access-ledger-panel .section-title {
      align-items: start;
      gap: 18px;
    }

    #view-access .access-ledger-toolbar {
      justify-content: flex-end;
    }

    #view-access .access-ledger-toggle {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 34px;
      padding: 0.34rem 0.68rem;
      border-radius: 999px;
      border: 0;
      background: linear-gradient(145deg, rgba(244, 248, 252, 0.94), rgba(225, 232, 243, 0.86));
      color: var(--muted);
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.28),
        -5px -5px 12px rgba(255, 255, 255, 0.92),
        inset 1px 1px 1px rgba(255, 255, 255, 0.68);
      font-size: 0.82rem;
      font-weight: 600;
      white-space: nowrap;
    }

    #view-access .access-ledger-toggle input {
      margin: 0;
    }

    #view-access .access-ledger-toggle:has(input:checked) {
      color: var(--brand);
      box-shadow:
        inset 5px 5px 10px rgba(150, 160, 185, 0.28),
        inset -5px -5px 10px rgba(255, 255, 255, 0.92);
    }

    #view-access .access-grant-ledger {
      gap: 12px;
    }

    #view-access .access-grant-table-shell {
      width: 100%;
      overflow-x: auto;
      border-radius: 18px;
      background: rgba(233, 238, 246, 0.66);
      box-shadow: inset 7px 7px 15px rgba(150, 160, 185, 0.23), inset -7px -7px 15px rgba(255, 255, 255, 0.9);
    }

    #view-access .access-ledger-panel .empty-state,
    #view-access #futureDeliverySection .empty-state {
      min-height: 62px;
      display: grid;
      place-items: center;
      padding: 16px 20px;
      border: 0;
      border-radius: 18px;
      background: rgba(233, 238, 246, 0.68);
      box-shadow:
        inset 7px 7px 15px rgba(150, 160, 185, 0.22),
        inset -7px -7px 15px rgba(255, 255, 255, 0.92);
      color: var(--muted);
      font-size: 0.88rem;
      text-align: center;
    }

    #view-access .access-grant-table {
      width: 100%;
      min-width: 860px;
      border-collapse: collapse;
      table-layout: fixed;
    }

    #view-access .access-grant-table th {
      padding: 12px 14px 9px;
      color: var(--muted);
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-align: left;
      text-transform: uppercase;
    }

    #view-access .access-grant-table th:nth-child(1) { width: 22%; }
    #view-access .access-grant-table th:nth-child(2) { width: 24%; }
    #view-access .access-grant-table th:nth-child(3) { width: 26%; }
    #view-access .access-grant-table th:nth-child(4) { width: 10%; }
    #view-access .access-grant-table th:nth-child(5) { width: 18%; }

    #view-access .access-request-table th:nth-child(1) { width: 22%; }
    #view-access .access-request-table th:nth-child(2) { width: 23%; }
    #view-access .access-request-table th:nth-child(3) { width: 28%; }
    #view-access .access-request-table th:nth-child(4) { width: 10%; }
    #view-access .access-request-table th:nth-child(5) { width: 17%; }

    #view-access .access-future-table th:nth-child(1) { width: 26%; }
    #view-access .access-future-table th:nth-child(2) { width: 34%; }
    #view-access .access-future-table th:nth-child(3) { width: 22%; }
    #view-access .access-future-table th:nth-child(4) { width: 18%; }

    #view-access .access-grant-table td {
      padding: 11px 14px;
      border-top: 1px solid rgba(255, 255, 255, 0.56);
      color: var(--text);
      vertical-align: top;
    }

    #view-access .access-grant-table-row {
      transition: background 0.16s ease;
    }

    #view-access .access-grant-table-row:hover {
      background: rgba(246, 249, 253, 0.48);
    }

    #view-access .access-grant-table-row.is-revoked {
      opacity: 0.66;
    }

    #view-access .access-table-primary {
      min-width: 0;
      color: var(--text);
      font-size: 0.88rem;
      font-weight: 600;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }

    #view-access .access-table-secondary {
      margin-top: 3px;
      color: var(--muted);
      font-size: 0.78rem;
      font-weight: 400;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }

    #view-access .access-purpose-line {
      display: grid;
      gap: 3px;
      margin-top: 8px;
      padding: 8px 10px;
      border-radius: 8px;
      background: rgba(233, 238, 246, 0.72);
      box-shadow:
        inset 4px 4px 9px rgba(150, 160, 185, 0.18),
        inset -4px -4px 9px rgba(255, 255, 255, 0.84);
      color: var(--text);
      font-size: 0.8rem;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }

    #view-access .access-purpose-line strong {
      color: var(--muted);
      font-size: 0.68rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    #view-access .access-purpose-line.is-empty {
      color: var(--muted);
      font-style: italic;
    }

    #view-access .access-table-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      justify-content: flex-end;
      min-width: 0;
    }

    #view-access .access-table-actions .btn {
      min-height: 30px;
      padding: 0.34rem 0.58rem;
      border-radius: 999px;
      font-size: 0.78rem;
      font-weight: 600;
    }

    #view-access .access-request-review-controls {
      flex: 1 1 100%;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-end;
      gap: 6px;
      min-width: 0;
    }

    #view-access .access-review-field,
    #view-access .access-review-check {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      color: var(--muted);
      font-size: 0.72rem;
      font-weight: 700;
      white-space: nowrap;
    }

    #view-access .access-review-field input[type="number"] {
      width: 72px;
      min-height: 30px;
      padding: 0.2rem 0.45rem;
      border-radius: 10px;
      border: 1px solid var(--line);
      background: var(--soft);
      color: var(--text);
      font: inherit;
      font-weight: 700;
    }

    #view-access .access-review-check input[type="checkbox"] {
      width: 16px;
      height: 16px;
      accent-color: var(--accent);
    }

    #view-access .access-table-actions .access-inline-status {
      flex-basis: 100%;
      margin-top: 2px;
      text-align: right;
      font-size: 0.74rem;
      line-height: 1.25;
    }

    #view-access .access-table-actions .access-inline-progress {
      flex: 1 1 190px;
      width: min(100%, 230px);
      margin-top: 4px;
      text-align: left;
    }

    #view-access .access-table-actions .access-progress {
      gap: 7px;
      padding: 9px 10px;
      border-radius: 14px;
    }

    #view-access .access-table-actions .access-progress-head {
      gap: 8px;
      font-size: 0.76rem;
      line-height: 1.25;
    }

    #view-access .access-table-actions .access-progress-head span:last-child {
      font-size: 0.72rem;
    }

    #view-access .access-table-actions .access-progress-track {
      height: 8px;
    }

    #view-access .access-future-table-shell {
      margin-top: 10px;
    }

    #view-access .access-future-table {
      min-width: 820px;
    }

    #view-access .access-future-table .badge {
      margin-bottom: 4px;
    }

    .scope-summary-card {
      display: grid;
      gap: 10px;
      margin-top: 14px;
      padding: 12px 14px;
      border: 1px solid rgba(188, 167, 140, 0.42);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.72);
    }

    .scope-summary-card > strong {
      font-size: 0.78rem;
      color: var(--muted);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .scope-summary {
      display: grid;
      gap: 8px;
      min-width: 0;
    }

    .scope-summary-main {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      min-width: 0;
    }

    .scope-summary-title {
      min-width: 0;
      font-weight: 700;
      color: var(--text);
      overflow-wrap: anywhere;
    }

    .scope-summary-note {
      color: var(--muted);
      font-size: 0.88rem;
      line-height: 1.35;
    }

    .scope-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
      min-width: 0;
    }

    .scope-chip {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      padding: 5px 9px;
      border-radius: 999px;
      border: 1px solid rgba(188, 167, 140, 0.45);
      background: rgba(255, 255, 255, 0.82);
      color: var(--text);
      font-size: 0.84rem;
      font-weight: 700;
      overflow-wrap: anywhere;
    }

    #view-access .request-card details {
      margin-top: 12px;
    }

    #view-access .request-card summary {
      cursor: pointer;
      color: var(--muted);
      font-size: 0.84rem;
      font-weight: 700;
      list-style: none;
    }

    #view-access .request-card summary::-webkit-details-marker {
      display: none;
    }

    #view-access .access-detail-list {
      display: grid;
      gap: 8px;
      margin-top: 10px;
      color: var(--muted);
      font-size: 0.85rem;
      line-height: 1.45;
    }

    #view-access .access-detail-list strong {
      color: var(--text);
      font-size: 0.78rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    #view-access .access-card-lead {
      margin-bottom: 10px;
      color: var(--muted);
      font-size: 0.9rem;
      line-height: 1.45;
    }

    #view-access .access-section-status {
      margin: 10px 0 0;
      color: var(--muted);
      font-size: 0.84rem;
      line-height: 1.4;
    }

    #view-access .access-section-status:empty {
      display: none;
    }

    #view-access .access-compact-card {
      padding: 12px 14px;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.9);
    }

    #view-access .access-row-card {
      gap: 6px;
      border-color: rgba(188, 167, 140, 0.36);
      box-shadow: none;
    }

    #view-access .access-compact-card h4 {
      margin: 0 0 3px;
      font-size: 0.98rem;
    }

    #view-access .access-compact-card .card-top {
      align-items: start;
      gap: 10px;
    }

    #view-access .access-compact-card .request-meta {
      margin-bottom: 4px;
      gap: 6px;
    }

    #view-access .access-compact-card .access-card-lead {
      margin-bottom: 4px;
      font-size: 0.86rem;
      line-height: 1.32;
    }

    #view-access .access-compact-card .request-copy {
      font-size: 0.82rem;
      line-height: 1.35;
    }

    #view-access .access-compact-card .request-actions {
      margin-top: 2px;
      justify-content: flex-end;
    }

    #view-access .access-compact-card .request-actions .btn {
      min-height: 34px;
      padding: 0.45rem 0.78rem;
      font-size: 0.88rem;
      border-radius: 12px;
    }

    #view-access .access-row-card .request-actions .btn.warn {
      background: rgba(184, 130, 37, 0.14);
      border-color: rgba(184, 130, 37, 0.22);
      color: #915f13;
    }

    #view-access .access-row-card .request-actions .btn.secondary,
    #view-access .access-row-card .request-actions .btn.ghost {
      background: transparent;
      border-color: rgba(11, 92, 99, 0.16);
    }

    #view-access .access-row-card .request-actions .btn.secondary:hover,
    #view-access .access-row-card .request-actions .btn.ghost:hover {
      background: rgba(247, 250, 249, 0.92);
    }

    #view-access .access-row-card details {
      margin-top: 2px;
    }

    #view-access .access-row-card summary {
      font-size: 0.8rem;
      font-weight: 600;
    }

    #view-access .access-rejection-comment {
      display: grid;
      gap: 4px;
      margin-top: 4px;
      padding: 10px 12px;
      border-radius: 8px;
      background: rgba(185, 73, 99, 0.08);
      color: #8b3048;
      font-size: 0.84rem;
      line-height: 1.35;
    }

    #view-access .access-rejection-comment strong {
      color: #8b3048;
      font-size: 0.72rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    #view-access .access-technical-details {
      display: none;
    }

    body.show-debug #view-access .access-technical-details {
      display: block;
    }

    #view-access .access-inline-status {
      margin-top: 4px;
      color: var(--muted);
      font-size: 0.8rem;
      line-height: 1.32;
    }

    #view-access .access-inline-status:empty {
      display: none;
    }

    #view-access .access-inline-status.is-problem {
      color: #8b6020;
    }

    #view-access .access-inline-status.is-success {
      color: #1f6f54;
    }

    #view-access .access-grant-card {
      display: grid;
      gap: 14px;
      padding: 16px;
      border-radius: 8px;
      box-shadow: none;
    }

    #view-access .access-grant-card .card-top {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: start;
    }

    #view-access .access-grant-card h4 {
      margin: 0 0 4px;
      font-size: 1.02rem;
      letter-spacing: -0.02em;
      overflow-wrap: anywhere;
    }

    #view-access .access-grant-summary-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(260px, 0.9fr);
      gap: 14px;
    }

    #view-access .access-grant-cell {
      display: grid;
      gap: 8px;
      min-width: 0;
      align-content: start;
    }

    #view-access .access-grant-cell strong {
      color: var(--muted);
      font-size: 0.76rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    #view-access .access-grant-pills {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
      min-width: 0;
    }

    #view-access .access-grant-condition-list {
      display: grid;
      gap: 7px;
      color: var(--muted);
      font-size: 0.86rem;
      line-height: 1.4;
    }

    #view-access .access-grant-condition-list div {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    #view-access .access-grant-card .request-actions {
      margin-top: 0;
      justify-content: flex-end;
    }

    #view-access .access-segmented {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin: 4px 0 10px;
    }

    #view-access .access-choice-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    #view-access .access-segmented-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 36px;
      padding: 0.52rem 0.86rem;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.64);
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.94), rgba(226, 233, 244, 0.86));
      color: var(--muted);
      box-shadow: var(--neu-raised-sm);
      font: inherit;
      font-size: 0.88rem;
      font-weight: 600;
      cursor: pointer;
    }

    #view-access .access-choice-card {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 4px 10px;
      align-items: center;
      justify-content: start;
      min-height: 76px;
      padding: 0.82rem 0.9rem;
      border-radius: 18px;
      text-align: left;
      white-space: normal;
      border: 0;
      box-shadow: 8px 8px 18px rgba(150, 160, 185, 0.28), -8px -8px 18px rgba(255, 255, 255, 0.86);
    }

    #view-access .access-choice-card strong,
    #view-access .access-choice-card small {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    #view-access .access-choice-card small {
      grid-column: 2;
      color: var(--muted);
      font-size: 0.78rem;
      font-weight: 700;
      line-height: 1.25;
    }

    #view-access .access-choice-icon {
      display: inline-grid;
      grid-row: span 2;
      place-items: center;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: linear-gradient(145deg, rgba(246, 249, 253, 0.96), rgba(225, 232, 243, 0.9));
      color: var(--brand);
      box-shadow: var(--neu-raised-sm);
      font-size: 0.9rem;
      font-weight: 900;
      line-height: 1;
    }

    #view-access .access-segmented-btn.is-active {
      border-color: rgba(255, 255, 255, 0.7);
      background: linear-gradient(145deg, rgba(224, 241, 255, 0.9), rgba(239, 246, 255, 0.8));
      color: var(--text);
      box-shadow: var(--neu-pressed);
    }

    #view-access .access-segmented-btn.is-active .access-choice-icon {
      background: rgba(223, 235, 249, 0.78);
      box-shadow: var(--neu-pressed);
    }

    #view-access .access-history-hint {
      margin-bottom: 8px;
      color: var(--muted);
      font-size: 0.8rem;
      line-height: 1.35;
    }

    #view-access .access-load-more-actions {
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-top: 2px;
    }

    #view-access .access-load-more-actions .btn {
      min-height: 34px;
      padding: 0.42rem 0.78rem;
      border-radius: 999px;
      background: linear-gradient(145deg, rgba(247, 250, 254, 0.96), rgba(224, 231, 242, 0.88));
      border-color: rgba(255, 255, 255, 0.72);
      box-shadow: 6px 6px 14px rgba(150, 160, 185, 0.24), -6px -6px 14px rgba(255, 255, 255, 0.9);
      font-size: 0.82rem;
    }

    #view-access .access-load-more-actions .access-history-hint {
      margin: 0;
    }

    .admin-panel-grid {
      display: grid;
      grid-template-columns: minmax(340px, 0.95fr) minmax(420px, 1.05fr);
      gap: 18px;
      align-items: start;
    }

    .admin-workspace {
      display: grid;
      gap: 12px;
      min-width: 0;
    }

    .admin-overview-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
      min-width: 0;
    }

    .admin-metric,
    .admin-panel {
      min-width: 0;
      border: 1px solid rgba(255, 255, 255, 0.66);
      border-radius: 18px;
      background: var(--panel);
      box-shadow: var(--neu-raised);
    }

    .admin-metric {
      display: grid;
      gap: 8px;
      padding: 18px 20px;
    }

    .admin-metric-label {
      color: var(--muted);
      font-size: 0.74rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .admin-metric-value {
      color: var(--text);
      font-size: clamp(2rem, 3vw, 3.25rem);
      font-weight: 800;
      line-height: 0.95;
    }

    .admin-metric-copy {
      color: var(--muted);
      font-size: 0.88rem;
      line-height: 1.35;
    }

    .admin-panel {
      display: grid;
      gap: 12px;
      padding: 18px;
      overflow: hidden;
      border: 0;
      background: rgba(232, 238, 248, 0.74);
      box-shadow:
        12px 12px 26px rgba(150, 160, 185, 0.22),
        -12px -12px 26px rgba(255, 255, 255, 0.82);
    }

    #view-node-admin .page-head {
      padding: 14px 16px;
      min-height: auto;
      align-items: center;
      border: 0;
      border-radius: 16px;
      background: rgba(232, 238, 248, 0.7);
      box-shadow:
        10px 10px 22px rgba(150, 160, 185, 0.2),
        -10px -10px 22px rgba(255, 255, 255, 0.82);
    }

    #view-node-admin .page-head h2 {
      font-size: 1.05rem;
      line-height: 1.15;
    }

    #view-node-admin .page-head .section-copy {
      margin-top: 4px;
      font-size: 0.86rem;
    }

    #view-node-admin .page-head .btn {
      min-height: 40px;
      padding: 0.48rem 0.82rem;
      border: 0;
      border-radius: 14px;
      background: rgba(232, 238, 248, 0.88);
      box-shadow:
        6px 6px 14px rgba(150, 160, 185, 0.22),
        -6px -6px 14px rgba(255, 255, 255, 0.86);
      font-size: 0.88rem;
    }

    #view-node-admin .section-title {
      align-items: center;
      gap: 12px;
      margin-bottom: 0;
    }

    #view-node-admin .section-title h3 {
      font-size: 1rem;
      line-height: 1.2;
    }

    #view-node-admin .section-title .section-copy {
      margin-top: 4px;
      font-size: 0.84rem;
    }

    .admin-status-line {
      min-height: 40px;
      display: flex;
      align-items: center;
      padding: 10px 14px;
      border: 0;
      border-radius: 12px;
      background: rgba(232, 238, 248, 0.72);
      box-shadow:
        inset 5px 5px 11px rgba(150, 160, 185, 0.18),
        inset -5px -5px 11px rgba(255, 255, 255, 0.82);
      color: var(--muted);
      font-size: 0.86rem;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }

    .admin-status-line.is-info {
      color: var(--muted);
    }

    .admin-status-line.is-success {
      border-color: rgba(47, 125, 87, 0.34);
      background: rgba(223, 241, 232, 0.88);
      color: #24573f;
    }

    .admin-status-line.is-warn {
      border-color: rgba(155, 106, 29, 0.34);
      background: rgba(250, 235, 207, 0.88);
      color: #7d5518;
    }

    .admin-status-line.is-risk {
      border-color: rgba(155, 63, 63, 0.34);
      background: rgba(248, 223, 223, 0.9);
      color: #7c3232;
    }

    .admin-invite-form {
      display: grid;
      grid-template-columns: minmax(170px, 240px) auto;
      gap: 10px;
      align-items: center;
      justify-content: end;
      min-width: 0;
    }

    .admin-invite-form input {
      min-height: 40px;
      padding: 0.52rem 0.78rem;
      border: 0;
      border-radius: 14px;
      background: rgba(232, 238, 248, 0.86);
      box-shadow:
        inset 5px 5px 11px rgba(150, 160, 185, 0.18),
        inset -5px -5px 11px rgba(255, 255, 255, 0.82);
      font-size: 0.88rem;
    }

    .admin-invite-form .btn {
      min-height: 40px;
      padding: 0.5rem 0.82rem;
      border: 0;
      border-radius: 14px;
      box-shadow:
        7px 7px 15px rgba(150, 160, 185, 0.25),
        -7px -7px 15px rgba(255, 255, 255, 0.85);
      font-size: 0.88rem;
    }

    .admin-table-host {
      min-width: 0;
    }

    .admin-table-shell {
      width: 100%;
      overflow-x: auto;
      border-radius: 14px;
      background: rgba(232, 238, 248, 0.78);
      box-shadow:
        inset 7px 7px 15px rgba(150, 160, 185, 0.18),
        inset -7px -7px 15px rgba(255, 255, 255, 0.82);
    }

    .admin-table {
      width: 100%;
      min-width: 680px;
      border-collapse: collapse;
      table-layout: fixed;
    }

    .admin-table th {
      padding: 10px 12px 8px;
      color: var(--muted);
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-align: left;
      text-transform: uppercase;
    }

    .admin-table td {
      padding: 10px 12px;
      border-top: 1px solid rgba(255, 255, 255, 0.42);
      vertical-align: middle;
    }

    .admin-user-table th:nth-child(1) { width: 42%; }
    .admin-user-table th:nth-child(2) { width: 18%; }
    .admin-user-table th:nth-child(3) { width: 20%; }
    .admin-user-table th:nth-child(4) { width: 20%; }

    .admin-table-row.is-invitation {
      background: rgba(255, 255, 255, 0.18);
    }

    .admin-table-primary {
      min-width: 0;
      color: var(--text);
      font-size: 0.88rem;
      font-weight: 700;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }

    .admin-table-secondary {
      margin-top: 3px;
      color: var(--muted);
      font-size: 0.74rem;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }

    .admin-table-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      justify-content: flex-end;
      min-width: 0;
    }

    .admin-table-actions .btn {
      min-height: 30px;
      padding: 0.32rem 0.58rem;
      border: 0;
      border-radius: 999px;
      background: rgba(232, 238, 248, 0.88);
      box-shadow:
        4px 4px 9px rgba(150, 160, 185, 0.22),
        -4px -4px 9px rgba(255, 255, 255, 0.84);
      font-size: 0.74rem;
      font-weight: 700;
    }

    #view-node-admin .admin-table-actions .btn.risk {
      background: rgba(248, 226, 226, 0.8);
      color: #8a3a3a;
      box-shadow:
        4px 4px 9px rgba(150, 160, 185, 0.18),
        -4px -4px 9px rgba(255, 255, 255, 0.78);
    }

    #view-node-admin .badge {
      border: 0;
      box-shadow:
        3px 3px 7px rgba(150, 160, 185, 0.18),
        -3px -3px 7px rgba(255, 255, 255, 0.78);
      font-size: 0.74rem;
    }

    #view-node-admin .badge.ok {
      background: rgba(222, 241, 232, 0.78);
      color: #2b8a62;
    }

    #view-node-admin .badge.warn {
      background: rgba(250, 235, 207, 0.78);
      color: #8a641e;
    }

    .admin-empty-state {
      min-height: 72px;
      display: grid;
      place-items: center;
      padding: 18px;
      border: 1px solid rgba(255, 255, 255, 0.58);
      border-radius: 16px;
      background: rgba(238, 242, 248, 0.72);
      box-shadow: var(--neu-pressed);
      color: var(--muted);
      font-size: 0.9rem;
      text-align: center;
    }

    #view-node-admin,
    #view-node-admin .cluster,
    #view-node-admin .request-list,
    #view-node-admin .request-card {
      min-width: 0;
    }

    #view-node-admin .cluster {
      overflow: hidden;
    }

    #view-node-admin .request-card {
      border-radius: 8px;
      overflow: hidden;
    }

    #view-node-admin .card-top {
      align-items: center;
      min-width: 0;
    }

    #view-node-admin .card-top h4 {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    #view-node-admin .badge {
      flex: 0 0 auto;
    }

    #view-node-admin .pill {
      max-width: 100%;
      overflow-wrap: anywhere;
      white-space: normal;
    }

    .admin-detail-list {
      display: grid;
      gap: 8px;
      margin-top: 12px;
    }

    .admin-detail-row {
      display: grid;
      grid-template-columns: 82px minmax(0, 1fr);
      gap: 10px;
      align-items: start;
      color: var(--muted);
      font-size: 0.86rem;
      line-height: 1.45;
    }

    .admin-detail-row span {
      color: #455463;
      font-weight: 700;
    }

    .admin-detail-row code,
    #view-node-admin .request-copy,
    #view-node-admin .mono {
      min-width: 0;
      max-width: 100%;
      white-space: normal;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    #view-node-admin .row {
      grid-template-columns: minmax(0, 1fr);
      max-width: 460px;
    }

    #view-node-admin .surface-note {
      border-radius: 8px;
      overflow-wrap: anywhere;
    }

    #view-node-admin .wallet-qr {
      align-items: flex-start;
      border-radius: 8px;
      min-width: 0;
    }

    #view-node-admin .wallet-qr > div {
      min-width: 0;
      flex: 1 1 220px;
    }

    #view-node-admin .wallet-qr img {
      width: 180px;
      height: 180px;
      border-radius: 8px;
    }
    .grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }

    .home-hero {
      display: grid;
      grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr);
      gap: 22px;
      padding: 28px;
      border-radius: 28px;
      background:
        radial-gradient(circle at top right, rgba(255,255,255,0.16), transparent 30%),
        linear-gradient(135deg, rgba(11, 92, 99, 0.97), rgba(24, 113, 130, 0.92));
      color: #f7fbfb;
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .home-hero > * {
      min-width: 0;
    }

    .home-hero h2 {
      margin: 0 0 10px;
      font-size: clamp(1.9rem, 3.4vw, 3rem);
      letter-spacing: -0.04em;
      line-height: 1.02;
      max-width: 12ch;
    }

    .home-hero p {
      margin: 0;
      color: rgba(247, 251, 251, 0.82);
      line-height: 1.55;
      max-width: 40rem;
      font-size: 1.02rem;
      text-wrap: pretty;
    }

    .home-hero-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 12px;
    }

    .hero-chip {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 0.42rem 0.68rem;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.16);
      background: rgba(255, 255, 255, 0.1);
      color: #fff;
      font-size: 0.78rem;
      font-weight: 700;
    }

    .hero-actions {
      display: grid;
      gap: 10px;
      align-content: start;
      min-width: 0;
    }

    .action-tile {
      display: grid;
      gap: 4px;
      width: 100%;
      min-width: 0;
      padding: 14px 16px;
      border-radius: 20px;
      border: 1px solid rgba(188, 167, 140, 0.38);
      background: rgba(255, 253, 249, 0.96);
      color: var(--text);
      text-align: left;
      cursor: pointer;
      transition: transform 120ms ease, border-color 120ms ease;
      box-shadow: var(--shadow);
    }

    .action-tile:hover,
    .action-tile:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(11, 92, 99, 0.3);
      outline: none;
    }

    .action-tile:disabled,
    .action-tile.is-disabled {
      background: #eef1f3;
      border-color: #d7dde2;
      color: #87919a;
      cursor: not-allowed;
      transform: none;
      box-shadow: none;
    }

    .action-tile:disabled strong,
    .action-tile.is-disabled strong,
    .action-tile:disabled span,
    .action-tile.is-disabled span {
      color: inherit;
    }

    .action-tile strong {
      color: var(--brand);
      font-size: 1.02rem;
      letter-spacing: -0.02em;
    }

    .action-tile span {
      color: var(--muted);
      font-size: 0.84rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    .stack-card {
      display: grid;
      gap: 14px;
      padding: 20px;
    }

    .stack-list {
      display: grid;
      gap: 10px;
    }

    .stack-item {
      display: grid;
      gap: 4px;
      padding: 12px 13px;
      border-radius: 14px;
      border: 1px solid rgba(188, 167, 140, 0.35);
      background: rgba(255, 255, 255, 0.72);
    }

    .stack-item strong {
      display: block;
      font-size: 0.82rem;
      color: var(--muted);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .stack-item span {
      font-size: 0.98rem;
      line-height: 1.4;
    }

    .journey-list,
    .feed-list,
    .trust-list {
      display: grid;
      gap: 12px;
      margin-top: 14px;
    }

    .journey-step,
    .feed-item,
    .trust-item {
      display: grid;
      gap: 6px;
      padding: 13px 14px;
      border: 1px solid rgba(188, 167, 140, 0.38);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.72);
    }

    .journey-step.is-active {
      border-color: rgba(11, 92, 99, 0.38);
      background: linear-gradient(180deg, rgba(220, 239, 240, 0.75), rgba(255, 255, 255, 0.9));
    }

    .journey-step.is-disabled,
    .placeholder-card {
      background: linear-gradient(180deg, rgba(239, 240, 242, 0.9), rgba(245, 246, 247, 0.98));
      color: #78828c;
    }

    .journey-step.is-disabled .muted,
    .placeholder-card .muted {
      color: #7f8891;
    }

    .placeholder-card {
      border-style: dashed;
    }

    .placeholder-card h3,
    .feature-card h3,
    .feed-card h3 {
      margin: 0 0 8px;
      font-size: 1rem;
      letter-spacing: -0.02em;
    }

    .card-top {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .cluster {
      display: grid;
      gap: 18px;
      padding: 20px;
    }

    .compact-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
      gap: 18px;
    }

    .vault-browser {
      display: grid;
      grid-template-columns: minmax(320px, 0.84fr) minmax(480px, 1.16fr);
      gap: 18px;
      align-items: start;
    }

    .vault-list-panel,
    .vault-drawer {
      gap: 16px;
      min-height: 620px;
      background: rgba(255, 253, 249, 0.96);
    }

    .vault-list-panel {
      padding: 0;
      overflow: hidden;
    }

    .vault-drawer {
      position: sticky;
      top: 88px;
    }

    .vault-panel-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
      padding: 20px 20px 0;
    }

    .vault-kicker {
      margin: 0 0 6px;
      color: var(--muted);
      font-size: 0.76rem;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .vault-panel-head h3 {
      margin: 0;
      font-size: 1.18rem;
      letter-spacing: -0.03em;
    }

    .vault-panel-meta {
      color: var(--muted);
      font-size: 0.88rem;
      line-height: 1.45;
      white-space: nowrap;
    }

    .vault-mode-switch {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 4px;
      border: 1px solid rgba(27, 72, 76, 0.16);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.84);
    }

    .vault-mode-btn {
      min-height: 34px;
      padding: 0.42rem 0.72rem;
      border: 0;
      border-radius: 6px;
      background: transparent;
      color: var(--muted);
      font: inherit;
      font-size: 0.84rem;
      font-weight: 800;
      cursor: pointer;
      white-space: nowrap;
      transition: background 140ms ease, color 140ms ease, transform 140ms ease;
    }

    .vault-mode-btn:hover,
    .vault-mode-btn:focus-visible {
      outline: none;
      color: var(--text);
      background: rgba(27, 72, 76, 0.08);
    }

    .vault-mode-btn.is-active {
      background: #0b5b63;
      color: #fff;
      box-shadow: 0 6px 16px rgba(11, 91, 99, 0.16);
    }

    .vault-toolbar {
      display: grid;
      gap: 10px;
      padding: 0 20px 14px;
      border-bottom: 1px solid rgba(188, 167, 140, 0.18);
    }

    .vault-filter-row {
      display: grid;
      grid-template-columns: minmax(0, 1.8fr) repeat(2, minmax(150px, 0.7fr));
      gap: 10px;
      align-items: end;
    }

    .vault-filter-row .field {
      margin: 0;
    }

    .vault-filter-row label {
      margin-bottom: 6px;
      font-size: 0.72rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .vault-filter-row input,
    .vault-filter-row select {
      min-height: 42px;
      border-radius: 14px;
      border: 1px solid rgba(188, 167, 140, 0.36);
      background: rgba(255, 255, 255, 0.92);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
      font-size: 0.88rem;
      color: var(--text);
    }

    .vault-focus-strip {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }

    .vault-focus-shell,
    .vault-density-shell {
      display: grid;
      gap: 8px;
    }

    .vault-focus-label {
      color: var(--muted);
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .vault-focus-list,
    .vault-density-controls {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .vault-focus-btn,
    .vault-density-btn,
    .vault-detail-tab {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 34px;
      padding: 0.42rem 0.72rem;
      border-radius: 999px;
      border: 1px solid rgba(27, 72, 76, 0.16);
      background: rgba(255, 255, 255, 0.95);
      color: var(--muted);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 700;
      cursor: pointer;
      transition: background 140ms ease, color 140ms ease, border-color 140ms ease, transform 140ms ease;
    }

    .vault-focus-btn:hover,
    .vault-focus-btn:focus-visible,
    .vault-density-btn:hover,
    .vault-density-btn:focus-visible,
    .vault-detail-tab:hover,
    .vault-detail-tab:focus-visible {
      outline: none;
      transform: translateY(-1px);
      border-color: rgba(27, 72, 76, 0.28);
      color: var(--text);
    }

    .vault-focus-btn.is-active,
    .vault-density-btn.is-active,
    .vault-detail-tab.is-active {
      background: rgba(220, 239, 240, 0.92);
      border-color: rgba(11, 91, 99, 0.22);
      color: #0d5960;
      box-shadow: inset 0 0 0 1px rgba(11, 91, 99, 0.08);
    }

    .vault-focus-btn:disabled,
    .vault-density-btn:disabled,
    .vault-detail-tab:disabled {
      opacity: 0.52;
      cursor: default;
      transform: none;
    }

    .vault-focus-count {
      color: rgba(13, 89, 96, 0.8);
      font-size: 0.74rem;
      font-variant-numeric: tabular-nums;
    }

    .vault-table-foot {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      padding: 12px 20px 14px;
      border-top: 1px solid rgba(188, 167, 140, 0.18);
      background: linear-gradient(180deg, rgba(251, 249, 245, 0.72), rgba(255, 255, 255, 0.9));
    }

    .vault-pagination-meta {
      color: var(--muted);
      font-size: 0.82rem;
      line-height: 1.4;
    }

    .vault-pagination-pages {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
      gap: 8px;
    }

    .vault-page-chip {
      min-width: 46px;
      padding: 0.48rem 0.72rem;
      border-radius: 999px;
      border: 1px solid rgba(27, 72, 76, 0.16);
      background: rgba(255, 255, 255, 0.95);
      color: var(--muted);
      font-size: 0.83rem;
      font-weight: 700;
      font-variant-numeric: tabular-nums;
      cursor: pointer;
      transition: transform 140ms ease, background 140ms ease, border-color 140ms ease, color 140ms ease;
    }

    .vault-page-chip:hover,
    .vault-page-chip:focus-visible {
      outline: none;
      transform: translateY(-1px);
      border-color: rgba(27, 72, 76, 0.28);
      color: var(--text);
    }

    .vault-page-chip.active {
      border-color: rgba(27, 109, 114, 0.22);
      background: rgba(220, 239, 240, 0.86);
      color: #0d5960;
      box-shadow: inset 0 0 0 1px rgba(27, 109, 114, 0.08);
    }

    .vault-page-chip:disabled {
      opacity: 0.58;
      cursor: default;
      transform: none;
    }

    .vault-pagination-ellipsis {
      color: var(--muted);
      font-size: 1rem;
      letter-spacing: 0.16em;
    }

    .vault-browser {
      position: relative;
      display: block;
    }

    #view-data-vault {
      --pod-workspace-width: 1240px;
    }

    #view-data-vault #pod-data-overview,
    #view-data-vault #schema-model-viewer,
    #view-data-vault .vault-browser {
      width: min(100%, var(--pod-workspace-width));
      margin-inline: auto;
    }

    #view-data-vault #schema-model-viewer {
      display: grid;
      gap: 22px;
      padding: 26px 28px 30px;
      border-color: rgba(255, 255, 255, 0.72);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.76), rgba(228, 235, 246, 0.66)),
        var(--panel);
      box-shadow:
        14px 14px 30px rgba(150, 160, 185, 0.2),
        -14px -14px 30px rgba(255, 255, 255, 0.82);
    }

    #view-data-vault .vault-list-panel {
      overflow: visible;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }

    #view-data-vault #pod-data-overview {
      min-height: 0;
      padding: 20px 22px;
      align-items: center;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 18px;
    }

    #view-data-vault #pod-data-overview .head-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 12px;
      flex-wrap: wrap;
    }

    #view-data-vault #pod-data-overview h2 {
      margin-bottom: 4px;
      font-size: clamp(1.12rem, 0.7vw + 0.95rem, 1.42rem);
      line-height: 1.12;
    }

    #view-data-vault #pod-data-overview .section-copy {
      max-width: 46ch;
      margin: 0;
      font-size: 0.86rem;
      line-height: 1.42;
    }

    #view-data-vault .vault-kicker {
      margin-bottom: 5px;
      color: #6d7890;
      font-size: 0.68rem;
      letter-spacing: 0.12em;
    }

    #view-data-vault .vault-panel-head h3 {
      font-size: clamp(1.18rem, 1vw + 0.9rem, 1.55rem);
      letter-spacing: -0.02em;
    }

    #view-data-vault .vault-panel-meta {
      color: #6d7890;
      font-size: 0.82rem;
      text-align: right;
    }

    #view-data-vault .vault-mode-switch {
      gap: 6px;
      padding: 5px;
      border: 1px solid rgba(255, 255, 255, 0.7);
      border-radius: 20px;
      background: rgba(235, 241, 250, 0.9);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.22),
        inset -5px -5px 12px rgba(255, 255, 255, 0.86);
    }

    #view-data-vault .vault-mode-btn {
      min-height: 42px;
      min-width: 132px;
      padding: 0.52rem 0.95rem;
      border-radius: 14px;
      color: #6f7a92;
      font-size: 0.86rem;
      font-weight: 850;
      letter-spacing: 0;
    }

    #view-data-vault .vault-mode-btn.is-active {
      background: linear-gradient(145deg, #1f9bd4, #2075e8);
      color: #ffffff;
      box-shadow:
        7px 7px 16px rgba(150, 160, 185, 0.38),
        -7px -7px 16px rgba(255, 255, 255, 0.76),
        inset 1px 1px 0 rgba(255, 255, 255, 0.28);
    }

    #view-data-vault #refreshSchemaGraphBtn {
      min-height: 42px;
      padding: 0.52rem 0.95rem;
      border-radius: 14px;
      font-size: 0.82rem;
      font-weight: 780;
    }

    #view-data-vault .vault-toolbar {
      gap: 14px;
      padding: 18px 24px 22px;
      border-bottom: 0;
      background: transparent;
    }

    #view-data-vault .vault-filter-row {
      grid-template-columns: minmax(280px, 1.75fr) repeat(2, minmax(180px, 0.74fr));
      gap: 28px;
      align-items: end;
      padding: 28px 30px;
      border: 1px solid rgba(255, 255, 255, 0.58);
      border-radius: 28px;
      background:
        linear-gradient(145deg, rgba(232, 239, 249, 0.78), rgba(221, 230, 243, 0.72)),
        rgba(229, 236, 247, 0.72);
      box-shadow:
        10px 10px 24px rgba(150, 160, 185, 0.16),
        -10px -10px 24px rgba(255, 255, 255, 0.78),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
    }

    #view-data-vault .vault-filter-row .field {
      display: grid;
      gap: 16px;
    }

    #view-data-vault .vault-filter-row label {
      margin: 0;
      color: #35445c;
      font-size: 0.78rem;
      font-weight: 860;
      letter-spacing: 0.12em;
      line-height: 1;
      text-transform: uppercase;
    }

    #view-data-vault .vault-filter-row input,
    #view-data-vault .vault-filter-row select {
      min-height: 64px;
      width: 100%;
      border-radius: 22px;
      border: 1px solid rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(238, 244, 252, 0.86), rgba(226, 235, 247, 0.72));
      color: #2f3b52;
      font-size: 0.92rem;
      font-weight: 520;
      box-shadow:
        inset 5px 5px 14px rgba(150, 160, 185, 0.12),
        inset -5px -5px 14px rgba(255, 255, 255, 0.82),
        1px 1px 0 rgba(255, 255, 255, 0.5);
    }

    #view-data-vault .vault-filter-row input {
      padding-inline: 20px;
    }

    #view-data-vault .vault-filter-row select {
      padding-inline: 20px 44px;
    }

    #view-data-vault .vault-filter-row input::placeholder {
      color: #8c98ad;
      opacity: 1;
    }

    #view-data-vault .vault-table-shell {
      margin: 0 0 18px;
      padding: 12px;
      border: 1px solid rgba(255, 255, 255, 0.64);
      border-radius: 24px;
      background: rgba(231, 238, 248, 0.58);
      box-shadow:
        inset 10px 10px 22px rgba(150, 160, 185, 0.2),
        inset -10px -10px 22px rgba(255, 255, 255, 0.86);
    }

    .vault-browser.has-sidepanel .vault-list-panel {
      margin-right: 0;
    }

    .vault-toolbar {
      gap: 12px;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.68), rgba(250, 247, 242, 0.92));
    }

    .vault-table-shell {
      overflow: auto;
      max-height: calc(100vh - 280px);
    }

    .vault-record-table {
      width: 100%;
      border-collapse: collapse;
      table-layout: fixed;
      background: rgba(255, 255, 255, 0.52);
    }

    #view-data-vault .vault-record-table {
      border-collapse: separate;
      border-spacing: 0 10px;
      background: transparent;
    }

    .vault-record-table thead {
      position: sticky;
      top: 0;
      z-index: 2;
      background: rgba(248, 244, 237, 0.98);
      box-shadow: inset 0 -1px 0 rgba(188, 167, 140, 0.22);
    }

    #view-data-vault .vault-record-table thead {
      background: transparent;
      box-shadow: none;
    }

    .vault-record-table th {
      padding: 12px 20px;
      color: var(--muted);
      font-size: 0.74rem;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      text-align: left;
      white-space: nowrap;
    }

    #view-data-vault .vault-record-table th {
      padding: 8px 16px 10px;
      color: #657088;
      font-size: 0.72rem;
      letter-spacing: 0.1em;
    }

    #view-data-vault .vault-record-table th:first-child {
      padding-left: 20px;
    }

    #view-data-vault .vault-record-table th:last-child {
      padding-right: 20px;
    }

    .vault-record-table th:nth-child(1) {
      width: 24%;
    }

    .vault-record-table th:nth-child(2) {
      width: 14%;
    }

    .vault-record-table th:nth-child(3) {
      width: 24%;
    }

    .vault-record-table th:nth-child(4) {
      width: 15%;
    }

    .vault-record-table th:nth-child(5) {
      width: 15%;
    }

    .vault-record-table th:nth-child(6) {
      width: 8%;
    }

    .vault-record-table-body.is-compact .vault-table-row td {
      padding-top: 11px;
      padding-bottom: 11px;
    }

    .vault-table-row {
      cursor: pointer;
      transition: background 140ms ease, box-shadow 140ms ease;
    }

    #view-data-vault .vault-table-row {
      position: relative;
      transition: transform 150ms ease, filter 150ms ease;
    }

    .vault-table-row:hover,
    .vault-table-row:focus-visible {
      background: rgba(220, 239, 240, 0.34);
      outline: none;
    }

    #view-data-vault .vault-table-row:hover,
    #view-data-vault .vault-table-row:focus-visible {
      background: transparent;
      filter: brightness(1.015);
      transform: translateY(-1px);
    }

    .vault-table-row.active {
      background: linear-gradient(180deg, rgba(220, 239, 240, 0.9), rgba(246, 252, 252, 0.98));
      box-shadow: inset 3px 0 0 var(--brand);
    }

    #view-data-vault .vault-table-row.active {
      background: transparent;
      box-shadow: none;
    }

    .vault-table-row td {
      padding: 14px 20px;
      border-bottom: 1px solid rgba(188, 167, 140, 0.16);
      vertical-align: top;
      color: var(--text);
      font-size: 0.88rem;
      line-height: 1.45;
    }

    #view-data-vault .vault-table-row td {
      padding: 16px;
      border-bottom: 0;
      background: rgba(238, 243, 250, 0.9);
      box-shadow:
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    #view-data-vault .vault-table-row td:first-child {
      border-top-left-radius: 18px;
      border-bottom-left-radius: 18px;
      box-shadow:
        inset 4px 0 0 rgba(32, 117, 232, 0),
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    #view-data-vault .vault-table-row td:last-child {
      border-top-right-radius: 18px;
      border-bottom-right-radius: 18px;
    }

    #view-data-vault .vault-table-row td + td {
      box-shadow:
        inset 1px 0 0 rgba(255, 255, 255, 0.48),
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    #view-data-vault .vault-table-row.active td {
      background: linear-gradient(145deg, rgba(220, 235, 255, 0.96), rgba(241, 247, 255, 0.96));
    }

    #view-data-vault .vault-table-row.active td:first-child {
      box-shadow:
        inset 4px 0 0 var(--brand),
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    .vault-table-row:last-child td {
      border-bottom: 0;
    }

    .vault-table-primary {
      font-size: 0.92rem;
      font-weight: 700;
      letter-spacing: -0.02em;
      overflow-wrap: anywhere;
    }

    #view-data-vault .vault-table-primary {
      color: #344057;
      font-weight: 700;
      line-height: 1.28;
    }

    .vault-table-secondary {
      margin-top: 4px;
      color: var(--muted);
      font-size: 0.76rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    #view-data-vault .vault-table-secondary {
      color: #6f7a92;
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .vault-table-status {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
    }

    #view-data-vault .vault-table-status {
      gap: 8px;
    }

    .vault-table-date {
      color: var(--muted);
      font-size: 0.8rem;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }

    #view-data-vault .vault-table-date {
      color: #6f7a92;
      font-size: 0.78rem;
      white-space: normal;
    }

    .vault-table-empty-row td {
      padding: 28px 20px;
      color: var(--muted);
      text-align: center;
    }

    #view-data-vault .vault-table-empty-row td {
      border-radius: 18px;
      background: rgba(238, 243, 250, 0.88);
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.16),
        inset -6px -6px 14px rgba(255, 255, 255, 0.82);
    }

    #view-data-vault .vault-table-foot {
      padding: 0 24px 24px;
      border-top: 0;
      background: transparent;
    }

    .vault-sidepanel-backdrop {
      position: fixed;
      inset: 0;
      background: transparent;
      pointer-events: none;
      z-index: 39;
    }

    .vault-drawer {
      position: fixed;
      top: 104px;
      right: 24px;
      bottom: 24px;
      width: clamp(380px, 39vw, 640px);
      padding: 22px 24px calc(30px + env(safe-area-inset-bottom, 0px));
      display: flex;
      flex-direction: column;
      min-height: 0;
      overflow: hidden;
      z-index: 40;
      opacity: 0;
      pointer-events: none;
      transform: translateX(18px);
      transition: opacity 160ms ease, transform 160ms ease;
      border: 1px solid rgba(255, 255, 255, 0.72);
      border-radius: 28px;
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.48), rgba(223, 231, 243, 0.68)),
        #e8eef7;
      box-shadow:
        18px 18px 38px rgba(82, 102, 140, 0.22),
        -16px -16px 32px rgba(255, 255, 255, 0.72);
    }

    .vault-drawer.is-open {
      opacity: 1;
      pointer-events: auto;
      transform: translateX(0);
    }

    .vault-sidepanel-head {
      flex: 0 0 auto;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
      margin-bottom: 16px;
      padding: 4px 2px 10px;
    }

    .vault-sidepanel-head .vault-panel-head {
      flex: 1 1 auto;
      min-width: 0;
    }

    .vault-sidepanel-head .vault-panel-meta {
      white-space: normal;
      text-align: right;
    }

    .vault-drawer .vault-panel-head h3 {
      font-size: clamp(1.12rem, 1vw + 0.88rem, 1.42rem);
      line-height: 1.16;
      overflow-wrap: anywhere;
    }

    .vault-drawer-body {
      flex: 1 1 auto;
      min-height: 0;
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: contain;
      scroll-padding-bottom: calc(36px + env(safe-area-inset-bottom, 0px));
      padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
      scrollbar-width: thin;
      scrollbar-color: rgba(109, 120, 144, 0.42) transparent;
    }

    .vault-drawer-body > * {
      min-width: 0;
    }

    .vault-sidepanel-close {
      min-height: 34px;
      padding: 0.46rem 0.86rem;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.68);
      background: rgba(235, 241, 250, 0.9);
      color: #344057;
      font: inherit;
      font-size: 0.82rem;
      font-weight: 700;
      cursor: pointer;
      transition: border-color 140ms ease, color 140ms ease, transform 140ms ease;
      box-shadow:
        7px 7px 16px rgba(150, 160, 185, 0.26),
        -7px -7px 16px rgba(255, 255, 255, 0.88);
    }

    .vault-sidepanel-close:hover,
    .vault-sidepanel-close:focus-visible {
      outline: none;
      transform: translateY(-1px);
      border-color: rgba(32, 117, 232, 0.24);
      color: #2075e8;
    }

    .vault-detail-summary {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .vault-field-list {
      display: grid;
      gap: 10px;
    }

    .vault-detail-summary-row,
    .vault-field-row {
      display: grid;
      gap: 6px;
      padding: 14px 16px;
      border-radius: 18px;
      border: 1px solid rgba(255, 255, 255, 0.62);
      background: rgba(238, 243, 250, 0.78);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.14),
        inset -5px -5px 12px rgba(255, 255, 255, 0.82);
      min-width: 0;
    }

    .vault-detail-summary-row--wide {
      grid-column: 1 / -1;
    }

    .vault-detail-summary-row strong,
    .vault-field-key {
      color: #657088;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .vault-detail-summary-value,
    .vault-field-value {
      color: #344057;
      font-size: 0.9rem;
      line-height: 1.48;
      overflow-wrap: anywhere;
    }

    .vault-field-value.mono {
      font-size: 0.86rem;
    }

    .vault-inline-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .vault-field-row details {
      display: grid;
      gap: 8px;
    }

    .vault-field-row summary {
      cursor: pointer;
      color: var(--brand);
      font-size: 0.8rem;
      font-weight: 700;
      outline: none;
    }

    .vault-field-row pre {
      margin: 0;
      max-height: 240px;
      background: #faf7f1;
    }

    .vault-drawer .vault-json {
      display: block;
      width: 100%;
      min-height: 360px;
      max-height: calc(100vh - 330px);
      height: auto;
      margin: 0;
      overflow: auto;
      border: 1px solid rgba(8, 24, 72, 0.42);
      border-radius: 22px;
      background:
        linear-gradient(145deg, rgba(10, 36, 114, 0.96), rgba(8, 25, 82, 0.98));
      color: #e9f3ff;
      box-shadow:
        inset 10px 10px 22px rgba(3, 13, 45, 0.55),
        inset -7px -7px 18px rgba(58, 112, 210, 0.22);
      padding: 18px;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
      font-size: 0.78rem;
      line-height: 1.55;
      text-align: left;
      white-space: pre;
      word-break: normal;
      overflow-wrap: normal;
    }

    .wallet-workspace {
      max-width: 1080px;
      margin: 0 auto;
      display: grid;
      gap: 16px;
    }

    #view-wallet .panel {
      border: 1px solid rgba(255, 255, 255, 0.72);
      border-radius: 26px;
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.5), rgba(226, 233, 244, 0.62)),
        var(--panel);
      box-shadow:
        18px 18px 38px rgba(150, 160, 185, 0.26),
        -18px -18px 38px rgba(255, 255, 255, 0.88);
    }

    .wallet-hero {
      display: grid;
      grid-template-columns: minmax(220px, 1fr) auto;
      align-items: center;
      gap: 16px;
      padding: 20px 24px;
      min-height: auto;
    }

    .wallet-hero h2,
    .wallet-section-head h3 {
      margin: 0;
      color: #344057;
      letter-spacing: -0.02em;
    }

    .wallet-hero h2 {
      font-size: clamp(1.18rem, 0.8vw + 0.95rem, 1.45rem);
      white-space: nowrap;
    }

    .wallet-hero .mini-copy,
    .wallet-section-head .mini-copy,
    .wallet-support-line {
      color: #6f7a92;
      font-size: 0.82rem;
      line-height: 1.42;
    }

    .wallet-hero-actions,
    .wallet-section-actions,
    .wallet-device-chip-row,
    .wallet-device-badges,
    .wallet-row-actions {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
    }

    .wallet-hero-actions {
      justify-content: flex-end;
    }

    .wallet-device-status-stack {
      display: grid;
      gap: 4px;
      margin-top: 4px;
    }

    #view-wallet .btn {
      min-height: 38px;
      border-radius: 16px;
      padding: 0.5rem 0.82rem;
      font-size: 0.82rem;
      white-space: nowrap;
    }

    .wallet-readiness,
    .wallet-devices,
    .wallet-token {
      display: grid;
      gap: 14px;
      padding: 20px 22px 22px;
    }

    #walletPilotReadinessStatus {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 3px;
    }

    #walletPilotReadinessStatus .badge {
      box-shadow:
        3px 3px 8px rgba(150, 160, 185, 0.2),
        -3px -3px 8px rgba(255, 255, 255, 0.86);
    }

    .wallet-readiness-list {
      display: grid;
      gap: 14px;
    }

    .wallet-readiness-primary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      min-width: 0;
      padding: 16px 18px;
      border: 1px solid rgba(255, 255, 255, 0.58);
      border-radius: 20px;
      background:
        linear-gradient(145deg, rgba(246, 248, 252, 0.62), rgba(226, 233, 244, 0.44)),
        rgba(237, 241, 247, 0.72);
      box-shadow:
        inset 7px 7px 16px rgba(150, 160, 185, 0.16),
        inset -7px -7px 16px rgba(255, 255, 255, 0.82);
    }

    .wallet-readiness-primary.is-warn {
      border-color: rgba(255, 255, 255, 0.62);
    }

    .wallet-readiness-primary.is-success {
      border-color: rgba(255, 255, 255, 0.62);
    }

    .wallet-readiness-primary-kicker,
    .wallet-readiness-group-title {
      color: #768198;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0;
    }

    .wallet-readiness-primary-title {
      margin-top: 4px;
      color: #2f3a50;
      font-size: 0.98rem;
      font-weight: 800;
      line-height: 1.24;
    }

    .wallet-readiness-primary-copy {
      margin-top: 4px;
      color: #5e6b84;
      font-size: 0.8rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    .wallet-readiness-primary-actions,
    .wallet-readiness-actions {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
    }

    .wallet-readiness-primary-actions {
      justify-content: flex-end;
      flex-shrink: 0;
    }

    #view-wallet .wallet-readiness-action {
      min-height: 32px;
      padding: 0.42rem 0.68rem;
      border-radius: 14px;
      font-size: 0.76rem;
      box-shadow:
        5px 5px 11px rgba(150, 160, 185, 0.24),
        -5px -5px 11px rgba(255, 255, 255, 0.86);
    }

    .wallet-readiness-group {
      display: grid;
      gap: 8px;
      min-width: 0;
    }

    .wallet-readiness-group-title {
      padding-left: 4px;
    }

    .wallet-readiness-card-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
      gap: 10px;
    }

    .wallet-readiness-item {
      position: relative;
      display: grid;
      gap: 7px;
      min-width: 0;
      padding: 13px 15px 13px 18px;
      border: 1px solid rgba(255, 255, 255, 0.58);
      border-radius: 18px;
      background:
        linear-gradient(145deg, rgba(246, 248, 252, 0.52), rgba(226, 233, 244, 0.36)),
        rgba(237, 241, 247, 0.7);
      color: #344057;
      box-shadow:
        8px 8px 18px rgba(150, 160, 185, 0.14),
        -8px -8px 18px rgba(255, 255, 255, 0.78);
    }

    .wallet-readiness-item::before {
      content: "";
      position: absolute;
      top: 14px;
      bottom: 14px;
      left: 9px;
      width: 3px;
      border-radius: 999px;
      background: rgba(112, 127, 142, 0.22);
    }

    .wallet-readiness-item.is-critical {
      border-color: rgba(255, 255, 255, 0.6);
    }

    .wallet-readiness-item.is-critical::before {
      background: rgba(163, 74, 98, 0.62);
    }

    .wallet-readiness-item.is-warning {
      border-color: rgba(255, 255, 255, 0.6);
    }

    .wallet-readiness-item.is-warning::before {
      background: rgba(161, 115, 24, 0.58);
    }

    .wallet-readiness-item-head {
      display: flex;
      align-items: center;
      gap: 8px;
      min-width: 0;
    }

    .wallet-readiness-item-head strong {
      min-width: 0;
      color: #344057;
      font-size: 0.82rem;
      overflow-wrap: anywhere;
    }

    .wallet-readiness-copy,
    .wallet-readiness-meta {
      min-width: 0;
      font-size: 0.75rem;
      line-height: 1.42;
      overflow-wrap: anywhere;
    }

    .wallet-readiness-meta {
      color: #6f7a92;
    }

    .wallet-readiness-ok-list {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
      gap: 8px;
    }

    .wallet-readiness-ok-item {
      display: flex;
      align-items: center;
      gap: 8px;
      min-width: 0;
      padding: 8px 10px;
      border: 1px solid rgba(255, 255, 255, 0.62);
      border-radius: 16px;
      background: rgba(237, 241, 247, 0.58);
      color: #3f4b62;
      font-size: 0.78rem;
      font-weight: 700;
      box-shadow:
        inset 4px 4px 9px rgba(150, 160, 185, 0.12),
        inset -4px -4px 9px rgba(255, 255, 255, 0.76);
    }

    .wallet-readiness-ok-item span:last-child {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    @media (max-width: 720px) {
      .wallet-readiness-primary {
        align-items: stretch;
        flex-direction: column;
      }

      .wallet-readiness-primary-actions {
        justify-content: flex-start;
      }
    }

    .wallet-section-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
    }

    .wallet-section-actions {
      justify-content: flex-end;
    }

    .wallet-device-table-shell {
      overflow-x: auto;
      padding: 10px;
      border: 1px solid rgba(255, 255, 255, 0.64);
      border-radius: 22px;
      background: rgba(231, 238, 248, 0.58);
      box-shadow:
        inset 10px 10px 22px rgba(150, 160, 185, 0.2),
        inset -10px -10px 22px rgba(255, 255, 255, 0.86);
    }

    .wallet-device-table {
      width: 100%;
      min-width: 860px;
      border-collapse: separate;
      border-spacing: 0 8px;
    }

    .wallet-device-table th:nth-child(1) { width: 22%; }
    .wallet-device-table th:nth-child(2) { width: 13%; }
    .wallet-device-table th:nth-child(3) { width: 20%; }
    .wallet-device-table th:nth-child(4) { width: 16%; }
    .wallet-device-table th:nth-child(5) { width: 13%; }
    .wallet-device-table th:nth-child(6) { width: 16%; }

    .wallet-device-table th {
      padding: 7px 12px 8px;
      color: #657088;
      font-size: 0.68rem;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-align: left;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .wallet-device-table td {
      padding: 12px;
      background: rgba(238, 243, 250, 0.92);
      color: #344057;
      vertical-align: middle;
      box-shadow:
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    .wallet-device-table td + td {
      box-shadow:
        inset 1px 0 0 rgba(255, 255, 255, 0.5),
        0 10px 20px rgba(150, 160, 185, 0.12),
        0 -8px 18px rgba(255, 255, 255, 0.72);
    }

    .wallet-device-table td:first-child {
      border-top-left-radius: 18px;
      border-bottom-left-radius: 18px;
    }

    .wallet-device-table td:last-child {
      border-top-right-radius: 18px;
      border-bottom-right-radius: 18px;
    }

    .wallet-device-table .badge,
    .wallet-device-table .pill {
      padding: 0.34rem 0.56rem;
      font-size: 0.7rem;
      box-shadow:
        3px 3px 8px rgba(150, 160, 185, 0.22),
        -3px -3px 8px rgba(255, 255, 255, 0.82);
    }

    .wallet-device-table tr.is-selected td {
      background: linear-gradient(145deg, rgba(220, 235, 255, 0.96), rgba(241, 247, 255, 0.96));
    }

    .wallet-device-main {
      color: #344057;
      font-size: 0.86rem;
      font-weight: 700;
      line-height: 1.28;
      overflow-wrap: anywhere;
    }

    .wallet-device-sub {
      margin-top: 4px;
      color: #6f7a92;
      font-size: 0.72rem;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }

    .wallet-icon-btn {
      min-height: 30px;
      padding: 0.34rem 0.54rem;
      border: 1px solid rgba(255, 255, 255, 0.68);
      border-radius: 999px;
      background: rgba(235, 241, 250, 0.92);
      color: #2075e8;
      font: inherit;
      font-size: 0.72rem;
      font-weight: 700;
      cursor: pointer;
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.24),
        -5px -5px 12px rgba(255, 255, 255, 0.86);
    }

    .wallet-icon-btn:hover,
    .wallet-icon-btn:focus-visible {
      outline: none;
      transform: translateY(-1px);
    }

    .wallet-icon-btn:disabled {
      color: #98a2b5;
      cursor: default;
      transform: none;
      box-shadow: var(--neu-pressed);
    }

    .wallet-row-select {
      display: inline-flex;
      width: 30px;
      height: 30px;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      background: rgba(235, 241, 250, 0.92);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.2),
        inset -5px -5px 12px rgba(255, 255, 255, 0.82);
      cursor: pointer;
    }

    .wallet-row-select input {
      width: 14px;
      height: 14px;
      margin: 0;
      box-shadow: none;
    }

    .wallet-support-line {
      padding: 10px 14px;
      border-radius: 16px;
      background: rgba(238, 243, 250, 0.72);
      color: #6f7a92;
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.16),
        inset -6px -6px 14px rgba(255, 255, 255, 0.84);
    }

    .wallet-support-line.is-success {
      color: #2b8c70;
    }

    .wallet-support-line.is-warn {
      color: #9f741f;
    }

    .wallet-support-line.is-info {
      color: #2075e8;
    }

    .wallet-token {
      width: 100%;
      padding: 16px 18px;
      border-color: rgba(255, 255, 255, 0.5);
      background:
        linear-gradient(145deg, rgba(235, 241, 250, 0.38), rgba(222, 230, 242, 0.36)),
        rgba(232, 238, 248, 0.42);
      box-shadow:
        inset 8px 8px 20px rgba(150, 160, 185, 0.12),
        inset -8px -8px 20px rgba(255, 255, 255, 0.72);
    }

    .wallet-token-create-form {
      display: grid;
      grid-template-columns: minmax(160px, 240px) auto;
      align-items: center;
      gap: 8px;
    }

    .wallet-token-create-form input {
      width: 100%;
      min-height: 38px;
      border: 0;
      border-radius: 16px;
      padding: 0.5rem 0.72rem;
      background: rgba(238, 243, 250, 0.68);
      color: #344057;
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.16),
        inset -6px -6px 14px rgba(255, 255, 255, 0.82);
    }

    .wallet-token-secret {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: center;
      padding: 8px;
      border-radius: 18px;
      background: rgba(231, 238, 248, 0.48);
      box-shadow:
        inset 7px 7px 16px rgba(150, 160, 185, 0.13),
        inset -7px -7px 16px rgba(255, 255, 255, 0.76);
    }

    .wallet-token-secret[hidden] {
      display: none;
    }

    .wallet-token-secret input {
      width: 100%;
      min-height: 38px;
      border: 0;
      border-radius: 14px;
      padding: 0.5rem 0.72rem;
      background: rgba(238, 243, 250, 0.7);
      color: #344057;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
      font-size: 0.82rem;
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.14),
        inset -5px -5px 12px rgba(255, 255, 255, 0.78);
    }

    .wallet-token-table-shell {
      overflow-x: auto;
      padding: 8px;
      border-radius: 18px;
      background: rgba(231, 238, 248, 0.48);
      box-shadow:
        inset 7px 7px 16px rgba(150, 160, 185, 0.13),
        inset -7px -7px 16px rgba(255, 255, 255, 0.76);
    }

    .wallet-token-table-shell .empty-state {
      margin: 0;
      border: 0;
      background: rgba(238, 243, 250, 0.62);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.12),
        inset -5px -5px 12px rgba(255, 255, 255, 0.72);
    }

    .wallet-token-table {
      width: 100%;
      min-width: 640px;
      border-collapse: separate;
      border-spacing: 0 7px;
    }

    .wallet-token-table th {
      padding: 6px 10px 7px;
      color: #657088;
      font-size: 0.66rem;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-align: left;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .wallet-token-table td {
      padding: 10px;
      background: rgba(238, 243, 250, 0.82);
      color: #344057;
      vertical-align: middle;
      box-shadow:
        0 8px 16px rgba(150, 160, 185, 0.1),
        0 -6px 14px rgba(255, 255, 255, 0.66);
    }

    .wallet-token-table td:first-child {
      border-top-left-radius: 16px;
      border-bottom-left-radius: 16px;
    }

    .wallet-token-table td:last-child {
      border-top-right-radius: 16px;
      border-bottom-right-radius: 16px;
      text-align: right;
    }

    .wallet-token-table strong,
    .wallet-token-table span,
    .wallet-token-table small {
      display: block;
    }

    .wallet-token-table span {
      margin-top: 3px;
      color: #6f7a92;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
      font-size: 0.72rem;
      word-break: break-all;
    }

    .wallet-token-table small {
      margin-top: 2px;
      color: #8791a7;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
      font-size: 0.66rem;
      word-break: break-all;
    }

    .wallet-token-revoke-btn {
      min-height: 34px;
      font-size: 0.75rem;
    }

    .wallet-inline-status.is-success {
      color: #2b8c70;
    }

    .wallet-inline-status.is-warn {
      color: #9f741f;
    }

    .vault-list-labels {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      padding: 0 20px 8px;
      color: var(--muted);
      font-size: 0.76rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      border-bottom: 1px solid rgba(188, 167, 140, 0.28);
    }

    .vault-record-list {
      display: grid;
      align-content: start;
      max-height: calc(100vh - 348px);
      overflow: auto;
    }

    .vault-record-group {
      border-bottom: 1px solid rgba(188, 167, 140, 0.14);
    }

    .vault-record-group:last-child {
      border-bottom: 0;
    }

    .vault-record-group-toggle {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 10px;
      align-items: center;
      width: 100%;
      padding: 12px 20px 10px;
      border: 0;
      border-bottom: 1px solid rgba(188, 167, 140, 0.18);
      background: rgba(247, 243, 236, 0.82);
      color: var(--text);
      text-align: left;
      cursor: pointer;
    }

    .vault-record-group-toggle:hover,
    .vault-record-group-toggle:focus-visible {
      outline: none;
      background: rgba(239, 244, 242, 0.9);
    }

    .vault-record-group-copy {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    .vault-record-group-copy strong {
      font-size: 0.82rem;
      letter-spacing: -0.01em;
    }

    .vault-record-group-copy span {
      color: var(--muted);
      font-size: 0.76rem;
    }

    .vault-record-group-chevron {
      color: var(--muted);
      font-size: 1rem;
      line-height: 1;
    }

    .vault-record-group-items {
      display: grid;
    }

    .vault-record-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: flex-start;
      width: 100%;
      padding: 11px 16px 11px 20px;
      border: 0;
      border-bottom: 1px solid rgba(188, 167, 140, 0.2);
      background: transparent;
      color: var(--text);
      text-align: left;
      cursor: pointer;
      transition: background 140ms ease, border-color 140ms ease;
    }

    .vault-record-row:hover,
    .vault-record-row:focus-visible {
      background: rgba(220, 239, 240, 0.38);
      outline: none;
    }

    .vault-record-row.active {
      background: linear-gradient(180deg, rgba(220, 239, 240, 0.78), rgba(248, 252, 252, 0.96));
      box-shadow: inset 3px 0 0 var(--brand);
    }

    .vault-record-main {
      min-width: 0;
      display: grid;
      gap: 5px;
    }

    .vault-record-schema {
      font-size: 0.9rem;
      font-weight: 700;
      letter-spacing: -0.02em;
      overflow-wrap: anywhere;
      line-height: 1.25;
    }

    .vault-record-preview {
      color: var(--muted);
      font-size: 0.8rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    .vault-record-meta-row {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
    }

    .vault-record-meta-row .pill,
    .vault-record-meta-row .badge {
      margin: 0;
    }

    .vault-record-sub {
      color: var(--muted);
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .vault-record-aside {
      display: grid;
      gap: 6px;
      justify-items: end;
      text-align: right;
    }

    .vault-record-date {
      color: var(--muted);
      font-size: 0.78rem;
      font-variant-numeric: tabular-nums;
      text-align: right;
      white-space: nowrap;
    }

    .vault-record-side-note {
      color: var(--muted);
      font-size: 0.72rem;
      line-height: 1.3;
    }

    .vault-record-list.is-compact .vault-record-row {
      padding-top: 9px;
      padding-bottom: 9px;
    }

    .vault-record-list.is-compact .vault-record-preview {
      display: none;
    }

    .vault-record-list.is-compact .vault-record-meta-row {
      gap: 5px;
    }

    .vault-drawer-meta {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
    }

    .vault-detail-item {
      display: grid;
      gap: 3px;
      padding: 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(188, 167, 140, 0.34);
      background: rgba(255, 255, 255, 0.72);
    }

    .vault-detail-item--wide {
      grid-column: 1 / -1;
    }

    .vault-detail-item strong {
      color: var(--muted);
      font-size: 0.72rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .vault-detail-item span {
      font-size: 0.88rem;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }

    .vault-detail-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: -2px;
    }

    .vault-drawer .section-copy {
      margin: 0 0 14px !important;
      padding: 14px 16px;
      border: 1px solid rgba(255, 255, 255, 0.62);
      border-radius: 18px;
      background: rgba(238, 243, 250, 0.72);
      color: #657088;
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.16),
        inset -6px -6px 14px rgba(255, 255, 255, 0.84);
    }

    .vault-drawer .actions {
      gap: 10px;
      margin: 0 0 14px !important;
    }

    .vault-drawer .btn {
      min-height: 42px;
      border-radius: 16px;
      font-size: 0.88rem;
      box-shadow:
        7px 7px 16px rgba(150, 160, 185, 0.28),
        -7px -7px 16px rgba(255, 255, 255, 0.86);
    }

    .vault-drawer .btn.secondary,
    .vault-drawer .btn.ghost {
      background: rgba(235, 241, 250, 0.9);
      color: #2075e8;
    }

    .vault-drawer .btn.ghost {
      color: #344057;
    }

    .vault-drawer .btn:disabled {
      background: rgba(224, 231, 241, 0.74);
      color: #98a2b5;
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.16),
        inset -5px -5px 12px rgba(255, 255, 255, 0.78);
    }

    .vault-drawer .vault-detail-tabs {
      display: inline-flex;
      align-self: flex-start;
      gap: 6px;
      margin: 2px 0 14px;
      padding: 6px;
      border-radius: 999px;
      background: rgba(230, 237, 247, 0.72);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.2),
        inset -5px -5px 12px rgba(255, 255, 255, 0.84);
    }

    .vault-drawer .vault-detail-tab {
      min-height: 34px;
      border-radius: 999px;
      border-color: transparent;
      background: transparent;
      box-shadow: none;
      color: #6f7a92;
    }

    .vault-drawer .vault-detail-tab.is-active {
      border-color: rgba(255, 255, 255, 0.7);
      background: linear-gradient(145deg, rgba(218, 240, 255, 0.96), rgba(238, 246, 255, 0.9));
      color: #2075e8;
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.24),
        -5px -5px 12px rgba(255, 255, 255, 0.86);
    }

    .vault-detail-panel {
      display: grid;
      gap: 12px;
    }

    .vault-overview-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .vault-overview-card,
    .vault-payload-field {
      display: grid;
      gap: 6px;
      padding: 12px 14px;
      border-radius: 16px;
      border: 1px solid rgba(188, 167, 140, 0.34);
      background: rgba(255, 255, 255, 0.78);
      min-width: 0;
    }

    .vault-overview-card--wide {
      grid-column: 1 / -1;
    }

    .vault-overview-card strong,
    .vault-payload-field strong {
      color: var(--muted);
      font-size: 0.72rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .vault-overview-value {
      font-size: 0.92rem;
      line-height: 1.45;
      overflow-wrap: anywhere;
    }

    .vault-overview-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .vault-copy-chip {
      cursor: pointer;
      background: rgba(255, 255, 255, 0.92);
    }

    .vault-copy-chip:hover,
    .vault-copy-chip:focus-visible {
      outline: none;
      border-color: rgba(11, 92, 99, 0.26);
      color: var(--brand);
    }

    .vault-payload-summary {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .vault-payload-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 10px;
    }

    .vault-payload-value {
      font-size: 0.88rem;
      line-height: 1.45;
      overflow-wrap: anywhere;
    }

    .vault-payload-field details {
      display: grid;
      gap: 8px;
    }

    .vault-payload-field summary {
      cursor: pointer;
      color: var(--brand);
      font-size: 0.78rem;
      font-weight: 700;
      outline: none;
    }

    .vault-payload-field pre {
      margin-top: 0;
      max-height: 220px;
      background: #faf7f1;
    }

    .vault-json {
      margin: 0;
      min-height: 420px;
      max-height: calc(100vh - 320px);
      overflow: auto;
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.4);
      background: rgba(17, 26, 34, 0.96);
      color: #edf4f7;
      padding: 18px;
      font-size: 0.82rem;
      line-height: 1.6;
      white-space: pre-wrap;
      word-break: break-word;
    }

    .technical-shell {
      display: none;
    }

    body.show-debug .technical-shell {
      display: block;
    }

    .section-title {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
      margin-bottom: 4px;
    }

    .section-title h3 {
      margin: 0 0 5px;
      font-size: 1.08rem;
      letter-spacing: -0.02em;
    }

    .toolbar {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
    }

    .cards {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
      gap: 14px;
    }

    #pluginCatalogSearchInput {
      min-width: min(280px, 100%);
    }

    .plugin-card {
      border: 1px solid rgba(188, 167, 140, 0.48);
      border-radius: 18px;
      padding: 16px;
      background: linear-gradient(180deg, rgba(255,255,255,0.94), rgba(249,245,239,0.96));
      cursor: pointer;
      transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
      box-shadow: var(--shadow);
      display: grid;
      gap: 14px;
    }

    .plugin-card:hover,
    .plugin-card:focus-visible {
      transform: translateY(-2px);
      border-color: rgba(11, 92, 99, 0.35);
      outline: none;
    }

    .plugin-card.active {
      border-color: rgba(11, 92, 99, 0.45);
      box-shadow: inset 0 0 0 1px rgba(11, 92, 99, 0.12), var(--shadow);
    }

    .plugin-card__head {
      display: grid;
      grid-template-columns: 52px minmax(0, 1fr);
      gap: 12px;
      align-items: start;
    }

    .plugin-card__icon {
      width: 52px;
      height: 52px;
      border-radius: 15px;
      background: linear-gradient(135deg, rgba(11, 92, 99, 0.12), rgba(196, 130, 48, 0.2));
      border: 1px solid rgba(11, 92, 99, 0.14);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      color: var(--ink);
      font-weight: 700;
      letter-spacing: 0.04em;
      font-size: 0.9rem;
      text-transform: uppercase;
      flex-shrink: 0;
    }

    .plugin-card__icon img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .plugin-card__title-wrap {
      min-width: 0;
    }

    .plugin-card h3 {
      margin: 0 0 4px;
      font-size: 1rem;
    }

    .plugin-card .meta {
      color: var(--muted);
      font-size: 0.86rem;
      line-height: 1.4;
    }

    .plugin-card__description {
      color: var(--muted);
      font-size: 0.92rem;
      line-height: 1.5;
      min-height: 3.9em;
    }

    .plugin-card .tags {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
    }

    .plugin-card__footer {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      align-items: center;
      flex-wrap: wrap;
    }

    .plugin-card__actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .plugin-card__actions .btn {
      min-width: 104px;
    }

    .schema-graph-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 14px;
      align-items: start;
    }

    .schema-graph-main,
    .schema-graph-inspector {
      min-width: 0;
      display: grid;
      gap: 14px;
    }

    .schema-graph-lanes {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      align-items: start;
    }

    .schema-category-lane {
      padding: 0;
    }

    .schema-category-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 12px;
      min-width: 0;
    }

    .schema-category-card {
      min-height: 94px;
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr) auto;
      grid-template-areas:
        "icon title count"
        "icon detail count";
      align-items: center;
      column-gap: 12px;
      row-gap: 5px;
      padding: 14px 16px;
      border-color: rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(250, 252, 255, 0.88), rgba(231, 237, 247, 0.68)),
        var(--panel);
      box-shadow:
        9px 9px 20px rgba(150, 160, 185, 0.17),
        -9px -9px 20px rgba(255, 255, 255, 0.84),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
    }

    .schema-category-card .schema-node-card__title {
      grid-area: title;
      align-self: end;
      margin: 0;
      font-size: 0.94rem;
      line-height: 1.16;
      hyphens: auto;
      overflow-wrap: normal;
      word-break: normal;
    }

    .schema-category-card .schema-node-card__detail {
      grid-area: detail;
      max-width: none;
      margin: 0;
      color: #6f7b93;
      font-size: 0.8rem;
      line-height: 1.28;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
    }

    .schema-category-card__top {
      display: contents;
    }

    .schema-category-card__icon {
      grid-area: icon;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 42px;
      height: 42px;
      border-radius: 16px;
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.88), rgba(220, 229, 241, 0.72));
      color: #0b6b70;
      font-size: 1rem;
      font-weight: 850;
      box-shadow:
        7px 7px 14px rgba(150, 160, 185, 0.16),
        -7px -7px 14px rgba(255, 255, 255, 0.76),
        inset 1px 1px 0 rgba(255, 255, 255, 0.76);
    }

    .schema-category-card__glyph {
      width: 25px;
      height: 25px;
      fill: none;
      stroke: currentColor;
      stroke-width: 2.25;
      stroke-linecap: round;
      stroke-linejoin: round;
      overflow: visible;
    }

    .schema-category-card__count {
      grid-area: count;
      justify-self: end;
      align-self: center;
      display: inline-flex;
      align-items: center;
      min-height: 30px;
      padding: 0 11px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.72);
      color: #6b778d;
      font-size: 0.72rem;
      font-weight: 760;
      white-space: nowrap;
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.14),
        -5px -5px 12px rgba(255, 255, 255, 0.76),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
    }

    .schema-drill-panel {
      display: grid;
      gap: 18px;
      padding: 22px;
      border-radius: 24px;
      border: 1px solid rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(250, 252, 255, 0.82), rgba(232, 238, 247, 0.68)),
        var(--panel);
      box-shadow:
        9px 9px 20px rgba(150, 160, 185, 0.14),
        -9px -9px 20px rgba(255, 255, 255, 0.78),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
      min-width: 0;
    }

    .schema-drill-nav {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 10px;
      min-width: 0;
    }

    .schema-drill-back {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 34px;
      height: 34px;
      border: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.7);
      color: var(--brand);
      font: inherit;
      font-size: 1.15rem;
      font-weight: 900;
      line-height: 1;
      cursor: pointer;
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.14),
        -5px -5px 12px rgba(255, 255, 255, 0.76);
    }

    .schema-drill-crumbs button {
      border: 0;
      background: transparent;
      color: var(--brand);
      font: inherit;
      font-weight: 800;
      cursor: pointer;
    }

    .schema-drill-crumbs {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 8px;
      min-width: 0;
      color: #6f7b93;
      font-size: 0.82rem;
      font-weight: 760;
      overflow: hidden;
    }

    .schema-drill-crumbs > * {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .schema-drill-crumbs > * + *::before {
      content: "/";
      margin-right: 8px;
      color: #9aa5b8;
      font-weight: 700;
    }

    .schema-drill-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 18px;
      min-width: 0;
    }

    .schema-drill-head h4 {
      margin: 4px 0 6px;
      color: #303a51;
      font-size: 1.22rem;
      line-height: 1.2;
    }

    .schema-drill-head p {
      margin: 0;
      max-width: 72ch;
      color: #6f7b93;
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .schema-drill-head__meta {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .schema-drill-table-shell {
      margin: 0;
      max-height: none;
    }

    .schema-drill-table {
      min-width: 760px;
    }

    .schema-graph-lane {
      display: grid;
      gap: 18px;
      padding: 22px;
      border-radius: 24px;
      border: 1px solid rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(250, 252, 255, 0.82), rgba(232, 238, 247, 0.68)),
        var(--panel);
      box-shadow:
        9px 9px 20px rgba(150, 160, 185, 0.14),
        -9px -9px 20px rgba(255, 255, 255, 0.78),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
      min-width: 0;
    }

    .schema-graph-lane-head {
      display: grid;
      gap: 4px;
      padding-bottom: 12px;
      border-bottom: 1px solid rgba(160, 172, 194, 0.16);
    }

    .schema-graph-lane-head strong {
      font-size: 0.86rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: #4f5f6e;
    }

    .schema-graph-lane-head span {
      color: var(--muted);
      font-size: 0.82rem;
      line-height: 1.45;
    }

    .schema-node-list,
    .schema-registry-grid,
    .schema-relationship-grid {
      display: grid;
      gap: 10px;
      min-width: 0;
    }

    .schema-registry-grid,
    .schema-relationship-grid {
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }

    .schema-node-card,
    .schema-relationship-card {
      width: 100%;
      min-width: 0;
      padding: 14px;
      border: 1px solid rgba(188, 167, 140, 0.34);
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.92);
      box-shadow: var(--shadow);
    }

    .schema-node-card {
      display: grid;
      gap: 10px;
      text-align: left;
      cursor: pointer;
      transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
    }

    .schema-node-card:hover,
    .schema-node-card:focus-visible {
      outline: none;
      transform: translateY(-1px);
      border-color: rgba(11, 92, 99, 0.36);
    }

    .schema-node-card.is-active {
      border-color: rgba(11, 92, 99, 0.24);
      box-shadow:
        inset 4px 4px 10px rgba(150, 160, 185, 0.16),
        inset -4px -4px 10px rgba(255, 255, 255, 0.82);
      background:
        linear-gradient(145deg, rgba(229, 241, 242, 0.78), rgba(245, 249, 252, 0.84));
    }

    .schema-node-card__eyebrow {
      color: #6a7887;
      font-size: 0.72rem;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .schema-node-card__head {
      display: grid;
      gap: 6px;
      min-width: 0;
    }

    .schema-node-card__head.has-icon {
      grid-template-columns: 44px minmax(0, 1fr);
      align-items: start;
    }

    .schema-node-card__head .plugin-card__icon {
      width: 44px;
      height: 44px;
      border-radius: 12px;
    }

    .schema-node-card__title {
      margin: 0;
      font-size: 0.98rem;
      line-height: 1.25;
      letter-spacing: -0.02em;
      color: var(--text);
      overflow-wrap: anywhere;
    }

    .schema-node-card__subtitle,
    .schema-node-card__detail,
    .schema-node-card__caption {
      color: var(--muted);
      font-size: 0.83rem;
      line-height: 1.45;
      overflow-wrap: anywhere;
    }

    .schema-node-card__pills,
    .schema-node-card__links,
    .schema-inspector-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      min-width: 0;
    }

    .schema-node-card__links .pill,
    .schema-inspector-chip-row .pill {
      white-space: normal;
      overflow-wrap: anywhere;
    }

    .schema-relationship-card {
      display: grid;
      gap: 10px;
      background: linear-gradient(180deg, rgba(255,255,255,0.94), rgba(243, 248, 250, 0.92));
    }

    .schema-relationship-card__label {
      color: #4d6270;
      font-size: 0.78rem;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .schema-relationship-card__path {
      display: grid;
      gap: 8px;
    }

    .schema-relationship-card__connector {
      color: #7d8a97;
      font-size: 0.82rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .schema-link-btn,
    .schema-inspector-action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      min-height: 32px;
      padding: 0.42rem 0.72rem;
      border-radius: 999px;
      border: 1px solid rgba(11, 92, 99, 0.18);
      background: rgba(255, 255, 255, 0.92);
      color: var(--text);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 700;
      cursor: pointer;
      text-align: left;
    }

    .schema-link-btn:hover,
    .schema-link-btn:focus-visible,
    .schema-inspector-action:hover,
    .schema-inspector-action:focus-visible {
      outline: none;
      border-color: rgba(11, 92, 99, 0.32);
      background: rgba(237, 247, 247, 0.96);
    }

    .schema-inspector {
      display: grid;
      gap: 12px;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    }

    .schema-inspector-card {
      display: grid;
      gap: 10px;
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.84), rgba(228, 234, 244, 0.64)),
        var(--panel);
      box-shadow:
        7px 7px 16px rgba(150, 160, 185, 0.18),
        -7px -7px 16px rgba(255, 255, 255, 0.78),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
      min-width: 0;
    }

    .schema-inspector-card.is-wide {
      grid-column: 1 / -1;
    }

    .schema-inspector-card h4 {
      margin: 0;
      font-size: 1.08rem;
      letter-spacing: -0.03em;
      color: var(--text);
      overflow-wrap: anywhere;
    }

    .schema-inspector-copy,
    .schema-inspector-note {
      color: var(--muted);
      font-size: 0.9rem;
      line-height: 1.5;
      overflow-wrap: anywhere;
    }

    .schema-inspector-grid {
      display: grid;
      gap: 10px;
    }

    .schema-inspector-row {
      display: grid;
      grid-template-columns: 112px minmax(0, 1fr);
      gap: 10px;
      align-items: start;
      color: var(--muted);
      font-size: 0.84rem;
      line-height: 1.45;
    }

    .schema-inspector-row strong {
      color: #455463;
      font-size: 0.76rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .schema-inspector-row span,
    .schema-inspector-row code {
      min-width: 0;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .schema-graph-header {
      margin-bottom: 12px;
    }

    .schema-graph-toolbar-shell {
      position: static;
      display: grid;
      gap: 10px;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
    }

    .schema-graph-toolbar {
      display: grid;
      grid-template-columns: minmax(280px, 1.5fr) minmax(190px, 0.82fr) minmax(160px, 0.7fr) minmax(160px, 0.7fr) auto;
      gap: 14px;
      align-items: end;
      padding: 18px;
      border: 1px solid rgba(255, 255, 255, 0.68);
      border-radius: 24px;
      background:
        linear-gradient(145deg, rgba(235, 242, 251, 0.82), rgba(223, 232, 245, 0.72)),
        rgba(229, 236, 247, 0.72);
      box-shadow:
        9px 9px 22px rgba(150, 160, 185, 0.16),
        -9px -9px 22px rgba(255, 255, 255, 0.8),
        inset 1px 1px 0 rgba(255, 255, 255, 0.7);
    }

    .schema-graph-toolbar .field {
      display: grid;
      gap: 10px;
      margin: 0;
      min-width: 0;
    }

    .schema-graph-toolbar label {
      margin: 0;
      color: #35445c;
      font-size: 0.72rem;
      font-weight: 860;
      letter-spacing: 0.12em;
      line-height: 1;
      text-transform: uppercase;
    }

    .schema-graph-toolbar input,
    .schema-graph-toolbar select {
      width: 100%;
      min-height: 50px;
      border-radius: 17px;
      border: 1px solid rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(238, 244, 252, 0.88), rgba(226, 235, 247, 0.74));
      color: #2f3b52;
      font-size: 0.9rem;
      box-shadow:
        inset 5px 5px 14px rgba(150, 160, 185, 0.12),
        inset -5px -5px 14px rgba(255, 255, 255, 0.82),
        1px 1px 0 rgba(255, 255, 255, 0.5);
    }

    .schema-graph-toolbar input {
      padding-inline: 18px;
    }

    .schema-graph-toolbar select {
      padding-inline: 18px 42px;
    }

    .schema-graph-toolbar input::placeholder {
      color: #8c98ad;
      opacity: 1;
    }

    #schemaGraphClearFocusBtn {
      min-height: 50px;
      align-self: end;
      white-space: nowrap;
    }

    .schema-node-card,
    .schema-relationship-card {
      transition:
        transform 140ms ease,
        border-color 140ms ease,
        box-shadow 140ms ease,
        opacity 140ms ease,
        filter 140ms ease,
        background 140ms ease;
    }

    .schema-node-card.is-focus-hit,
    .schema-relationship-card.is-focus-hit {
      border-color: rgba(11, 92, 99, 0.2);
      background:
        linear-gradient(145deg, rgba(237, 247, 247, 0.82), rgba(255, 255, 255, 0.82));
    }

    .schema-node-card.is-muted,
    .schema-relationship-card.is-muted {
      opacity: 0.62;
      filter: saturate(0.86);
    }

    .schema-node-card__status-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      flex-wrap: wrap;
    }

    .schema-node-card__meta {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      align-items: center;
    }

    .schema-graph-disclosure {
      display: grid;
      gap: 12px;
    }

    .schema-graph-disclosure__toggle,
    .schema-inspector-disclosure summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      width: 100%;
      min-height: 40px;
      padding: 0.7rem 0.9rem;
      border-radius: 14px;
      border: 1px solid rgba(11, 92, 99, 0.16);
      background: rgba(255, 255, 255, 0.88);
      color: var(--text);
      cursor: pointer;
      font: inherit;
      font-size: 0.84rem;
      font-weight: 700;
      text-align: left;
    }

    .schema-graph-disclosure__toggle:hover,
    .schema-graph-disclosure__toggle:focus-visible,
    .schema-inspector-disclosure summary:hover,
    .schema-inspector-disclosure summary:focus-visible {
      outline: none;
      border-color: rgba(11, 92, 99, 0.3);
      background: rgba(239, 248, 248, 0.94);
    }

    .schema-relationship-groups,
    .schema-registry-groups {
      display: grid;
      gap: 12px;
    }

    .schema-relationship-group,
    .schema-registry-group {
      display: grid;
      gap: 10px;
      padding: 12px;
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.28);
      background: rgba(255,255,255,0.74);
    }

    .schema-relationship-group__head,
    .schema-registry-group__head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }

    .schema-relationship-group__head strong,
    .schema-registry-group__head strong {
      color: #455463;
      font-size: 0.8rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .schema-relationship-group__head span,
    .schema-registry-group__head span {
      color: var(--muted);
      font-size: 0.8rem;
    }

    .schema-relationship-card__path {
      gap: 10px;
    }

    .schema-relationship-card__connector {
      letter-spacing: 0.03em;
      text-transform: none;
    }

    .schema-inspector-disclosure {
      display: grid;
      gap: 10px;
    }

    .schema-inspector-disclosure summary {
      list-style: none;
    }

    .schema-inspector-disclosure summary::-webkit-details-marker {
      display: none;
    }

    .schema-inspector-disclosure[open] summary {
      border-color: rgba(11, 92, 99, 0.28);
      background: rgba(239, 248, 248, 0.94);
    }

    .schema-inspector-disclosure__body {
      display: grid;
      gap: 10px;
      padding: 0 2px 2px;
    }

    .mapping-flow-toolbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }

    .mapping-flow-toolbar select {
      width: auto;
      min-width: 210px;
      max-width: 100%;
    }

    .mapping-flow-summary {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .mapping-flow-stat {
      display: grid;
      gap: 2px;
      min-width: 102px;
      padding: 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(188, 167, 140, 0.32);
      background: rgba(255,255,255,0.78);
    }

    .mapping-flow-stat strong {
      color: var(--text);
      font-size: 1rem;
      line-height: 1.1;
    }

    .mapping-flow-stat span {
      color: var(--muted);
      font-size: 0.75rem;
      line-height: 1.35;
    }

    .mapping-flow-groups {
      display: grid;
      gap: 12px;
    }

    .mapping-flow-group {
      display: grid;
      gap: 10px;
      padding: 12px;
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.28);
      background: rgba(255,255,255,0.7);
    }

    .mapping-flow-group__head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }

    .mapping-flow-group__head strong {
      color: #455463;
      font-size: 0.8rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .mapping-flow-group__head span {
      color: var(--muted);
      font-size: 0.8rem;
    }

    .mapping-flow-rule-list {
      display: grid;
      gap: 10px;
    }

    .mapping-flow-rule {
      display: grid;
      gap: 10px;
      padding: 12px;
      border-radius: 16px;
      border: 1px solid rgba(188, 167, 140, 0.28);
      background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(246, 248, 250, 0.9));
    }

    .mapping-flow-rule__meta {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }

    .mapping-flow-rule__path {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(136px, 0.55fr) minmax(0, 1fr);
      gap: 10px;
      align-items: stretch;
    }

    .mapping-flow-field,
    .mapping-flow-transform {
      display: grid;
      gap: 6px;
      padding: 11px 12px;
      border-radius: 14px;
      border: 1px solid rgba(188, 167, 140, 0.26);
      background: rgba(255,255,255,0.86);
      min-width: 0;
    }

    .mapping-flow-field.is-target {
      background: linear-gradient(180deg, rgba(240, 248, 248, 0.92), rgba(255,255,255,0.9));
      border-color: rgba(11, 92, 99, 0.18);
    }

    .mapping-flow-field__label {
      color: #6a7887;
      font-size: 0.73rem;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .mapping-flow-field code {
      color: var(--text);
      font-size: 0.85rem;
      line-height: 1.45;
      overflow-wrap: anywhere;
      word-break: break-word;
    }

    .mapping-flow-transform {
      align-content: center;
      justify-items: center;
      text-align: center;
      background: linear-gradient(180deg, rgba(249, 246, 241, 0.94), rgba(255,255,255,0.9));
    }

    .mapping-flow-transform__arrow {
      color: var(--brand);
      font-size: 1.1rem;
      line-height: 1;
    }

    .mapping-flow-transform__detail {
      color: var(--muted);
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .mapping-flow-raw {
      display: grid;
      gap: 10px;
    }

    .detail-shell {
      display: grid;
      gap: 16px;
    }

    .row {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .field {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }

    .field.full { grid-column: 1 / -1; }

    .field.has-stored-secret input[type="password"] {
      border-color: rgba(47, 125, 87, 0.34);
      background: rgba(223, 241, 232, 0.42);
    }

    .field-note {
      display: none;
      color: var(--muted);
      font-size: 0.76rem;
      line-height: 1.45;
    }

    .field-checkbox-group {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 10px;
      padding: 0.78rem 0.82rem;
      border-radius: 14px;
      border: 1px solid #cdbda8;
      background: rgba(255, 255, 255, 0.92);
    }

    .field-checkbox-option {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 42px;
      padding: 0.58rem 0.72rem;
      border-radius: 12px;
      background: rgba(247, 244, 239, 0.86);
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--text);
      cursor: pointer;
    }

    .field-checkbox-option input[type="checkbox"] {
      width: 18px;
      min-height: 18px;
      margin: 0;
      padding: 0;
      flex: 0 0 auto;
    }

    label {
      color: #314454;
      font-size: 0.82rem;
      font-weight: 700;
      letter-spacing: 0.01em;
    }

    input,
    select,
    textarea,
    button {
      font: inherit;
    }

    input,
    select,
    textarea {
      width: 100%;
      padding: 0.76rem 0.82rem;
      border-radius: 14px;
      border: 1px solid #cdbda8;
      background: rgba(255, 255, 255, 0.92);
      color: var(--text);
      min-height: 46px;
    }

    textarea {
      min-height: 120px;
      resize: vertical;
    }

    input[readonly] {
      background: #f7f4ef;
      color: #586673;
    }

    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible,
    button:focus-visible {
      outline: 2px solid rgba(11, 92, 99, 0.38);
      outline-offset: 2px;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 44px;
      padding: 0.72rem 1rem;
      border-radius: 14px;
      border: 1px solid var(--brand);
      background: var(--brand);
      color: #fff;
      cursor: pointer;
      font-weight: 700;
      letter-spacing: -0.01em;
      transition: transform 120ms ease, opacity 120ms ease, background 120ms ease;
    }

    .btn:hover { transform: translateY(-1px); }
    .btn.secondary {
      background: #f7faf9;
      color: var(--brand);
      border-color: rgba(11, 92, 99, 0.22);
    }
    .btn.accent {
      background: var(--accent);
      border-color: var(--accent);
      color: #fff9f5;
    }
    .btn.warn {
      background: var(--warn);
      border-color: var(--warn);
      color: #fffaf1;
    }
    .btn.risk {
      background: var(--risk);
      border-color: var(--risk);
      color: #fff6f6;
    }
    .btn.ghost {
      background: transparent;
      color: var(--text);
      border-color: rgba(101, 114, 127, 0.2);
    }
    .btn:disabled,
    .btn.is-disabled {
      background: #e7ebee;
      border-color: #d3d9de;
      color: #87919a;
      cursor: not-allowed;
      transform: none;
    }

    .actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .pill-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 10px;
    }

    .pill {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 0.34rem 0.62rem;
      border-radius: 999px;
      border: 1px solid rgba(188, 167, 140, 0.5);
      background: rgba(255,255,255,0.88);
      color: #455463;
      font-size: 0.78rem;
      font-weight: 600;
    }

    .pill.disabled {
      background: #eef1f3;
      color: #8a949c;
      border-style: dashed;
    }

    .request-list {
      display: grid;
      gap: 12px;
    }

    .request-card {
      border: 1px solid rgba(188, 167, 140, 0.46);
      border-radius: 18px;
      padding: 16px;
      background: rgba(255, 255, 255, 0.88);
    }

    .request-card h4,
    .data-card h4 {
      margin: 0 0 8px;
      font-size: 0.98rem;
      letter-spacing: -0.02em;
    }

    .request-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 10px;
    }

    .request-copy {
      color: var(--muted);
      font-size: 0.89rem;
      line-height: 1.5;
    }

    .request-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 12px;
    }

    .card-stack {
      display: grid;
      gap: 10px;
    }

    .card-stack .stack-list {
      margin-top: 0;
    }

    .mono,
    pre {
      font-family: "SFMono-Regular", "Consolas", "Liberation Mono", monospace;
    }

    pre {
      margin: 0;
      padding: 14px;
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.45);
      background: #fbf9f5;
      overflow: auto;
      max-height: 360px;
      font-size: 0.82rem;
      line-height: 1.45;
      white-space: pre-wrap;
      word-break: break-word;
    }

    .wallet-qr {
      display: none;
      gap: 12px;
      align-items: center;
      justify-content: flex-start;
      flex-wrap: wrap;
      padding: 14px;
      border: 1px solid rgba(188, 167, 140, 0.42);
      border-radius: 18px;
      background: rgba(255,255,255,0.85);
    }

    .wallet-qr img {
      width: 200px;
      height: 200px;
      border-radius: 18px;
      border: 1px solid rgba(188, 167, 140, 0.55);
      background: #fff;
      padding: 10px;
    }

    .output {
      display: none;
      position: sticky;
      top: 106px;
      padding: 18px;
      gap: 16px;
    }

    body.show-debug .output {
      display: grid;
    }

    .output-stat {
      padding: 12px 14px;
      border-radius: 16px;
      border: 1px solid rgba(188, 167, 140, 0.4);
      background: rgba(255,255,255,0.72);
    }

    .output-stat strong {
      display: block;
      margin-bottom: 6px;
      color: var(--muted);
      font-size: 0.79rem;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

    .empty-state {
      padding: 16px;
      border-radius: 18px;
      border: 1px dashed rgba(188, 167, 140, 0.72);
      background: rgba(255,255,255,0.64);
      color: var(--muted);
      text-align: center;
    }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    /*
      Minimal Neumorphic theme.
      This layer intentionally sits late in the file so older component
      backgrounds collapse into one quiet, tactile system.
    */
    html {
      background: var(--bg);
    }

    body,
    body.auth-locked {
      color: var(--text);
      background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.38), transparent 34%),
        var(--bg);
      color-scheme: light;
    }

    body.auth-locked {
      background:
        linear-gradient(145deg, #06185a 0%, #092987 48%, #0b4fa4 100%);
    }

    .shell,
    .workspace,
    .auth-gate {
      background: transparent;
    }

    .topbar {
      background: rgba(233, 238, 246, 0.88);
      border-bottom: 1px solid rgba(255, 255, 255, 0.6);
      box-shadow: 8px 8px 20px rgba(150, 160, 185, 0.28), -8px -8px 20px rgba(255, 255, 255, 0.72);
    }

    .identity-mark,
    .profile-toggle,
    .topbar-link,
    .context-button,
    .access-segmented-btn,
    .vault-focus-btn,
    .vault-density-btn,
    .schema-graph-action,
    .vault-sidepanel-close,
    .modal-close,
    .home-command-btn {
      border: 1px solid rgba(255, 255, 255, 0.68);
      background: var(--panel);
      color: var(--text);
      box-shadow: var(--neu-raised-sm);
    }

    .identity-mark {
      border-radius: 18px;
      background: var(--panel-strong);
      overflow: hidden;
    }

    .identity-mark img {
      object-fit: contain;
      padding: 8px;
    }

    .eyebrow,
    .title-sub,
    .profile-status,
    .section-copy,
    .request-copy,
    .access-card-lead,
    .home-panel-copy,
    .vault-panel-meta,
    .muted {
      color: var(--muted);
    }

    .title,
    .profile-name,
    h1,
    h2,
    h3,
    h4,
    .section-title h3,
    .home-panel-head h3,
    .vault-panel-head h3 {
      color: var(--text);
    }

    .topbar-link:hover,
    .topbar-link:focus-visible,
    .context-button:hover,
    .context-button:focus-visible,
    .access-segmented-btn:hover,
    .access-segmented-btn:focus-visible,
    .btn:hover,
    .btn:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(32, 183, 216, 0.28);
      box-shadow: 8px 8px 18px rgba(150, 160, 185, 0.35), -8px -8px 18px rgba(255, 255, 255, 0.94);
      outline: none;
    }

    .topbar-link.active,
    .context-button.is-active,
    .access-mode-button.is-active,
    .access-segmented-btn.is-active,
    .vault-focus-btn.is-active,
    .vault-density-btn.is-active,
    .schema-graph-action.is-active {
      background: linear-gradient(145deg, rgba(218, 240, 255, 0.96), rgba(236, 245, 255, 0.9));
      color: var(--brand);
      border-color: rgba(32, 117, 232, 0.18);
      box-shadow: var(--neu-pressed);
    }

    .profile-avatar,
    .profile-panel .profile-avatar,
    .access-step-index,
    .access-step-icon {
      background: linear-gradient(145deg, var(--accent), var(--brand));
      color: #ffffff;
      box-shadow: 5px 5px 12px rgba(150, 160, 185, 0.35), -5px -5px 12px rgba(255, 255, 255, 0.9);
    }

    .panel,
    .cluster,
    .page-head,
    .sidebar,
    .output,
    .profile-panel,
    .auth-card,
    .modal-card,
    .home-rail,
    .home-panel,
    .home-compact-panel,
    .home-focus-card,
    .request-card,
    .data-card,
    .context-card,
    .surface-note,
    .summary-card,
    .admin-summary-card,
    .vault-list-panel,
    .vault-detail-panel,
    .vault-drawer,
    .schema-node-card,
    .schema-inspector-card,
    .schema-graph-panel,
    .mapping-flow-group,
    .mapping-flow-rule,
    .plugin-card,
    .device-card,
    .access-flow-steps,
    .access-flow-step,
    .access-direction-step,
    .access-choice-card,
    .access-grant-card,
    .scope-summary-card {
      border: 1px solid rgba(255, 255, 255, 0.66);
      background: var(--panel);
      box-shadow: var(--neu-raised);
    }

    .page-head,
    .cluster,
    .panel,
    .home-panel,
    .request-card,
    .data-card,
    .vault-list-panel,
    .vault-detail-panel,
    .plugin-card,
    .schema-node-card,
    .schema-inspector-card,
    .mapping-flow-group,
    .mapping-flow-rule {
      border-radius: 18px;
    }

    .schema-category-card {
      min-height: 124px;
      gap: 8px 14px;
      padding: 18px 20px;
      border-color: rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(250, 252, 255, 0.88), rgba(231, 237, 247, 0.68)),
        var(--panel);
      box-shadow:
        9px 9px 20px rgba(150, 160, 185, 0.17),
        -9px -9px 20px rgba(255, 255, 255, 0.84),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
    }

    .schema-inspector-card {
      border-color: rgba(255, 255, 255, 0.74);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.84), rgba(228, 234, 244, 0.64)),
        var(--panel);
      box-shadow:
        7px 7px 16px rgba(150, 160, 185, 0.18),
        -7px -7px 16px rgba(255, 255, 255, 0.78),
        inset 1px 1px 0 rgba(255, 255, 255, 0.72);
    }

    .access-flow-steps {
      background: var(--panel);
      border-radius: 18px;
      overflow: visible;
      gap: 16px;
      border: 0;
      box-shadow: none;
    }

    .access-flow-step,
    .access-direction-step {
      border-left: 0;
      border-radius: 18px;
    }

    #view-access details,
    .vault-table-shell,
    .vault-json,
    .output-stat,
    .profile-stat,
    .home-grant-item,
    .home-request-card,
    .vault-record-row,
    .vault-sidepanel-section,
    .schema-inspector-row,
    .mapping-flow-stat,
    .mapping-flow-field,
    .mapping-flow-transform,
    pre {
      border: 1px solid rgba(255, 255, 255, 0.58);
      background: rgba(238, 242, 248, 0.72);
      box-shadow: var(--neu-pressed);
    }

    input,
    select,
    textarea,
    .vault-filter-row input,
    .vault-filter-row select,
    .mapping-flow-toolbar select {
      border: 1px solid rgba(255, 255, 255, 0.58);
      background: var(--bg);
      color: var(--text);
      box-shadow: var(--neu-pressed);
    }

    input::placeholder,
    textarea::placeholder {
      color: rgba(109, 120, 144, 0.78);
    }

    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible {
      border-color: rgba(32, 183, 216, 0.32);
      box-shadow: var(--neu-focus);
      outline: none;
    }

    input[readonly],
    textarea[readonly] {
      background: #e5ebf3;
      color: var(--muted);
    }

    input[type="range"] {
      accent-color: var(--accent);
      box-shadow: none;
    }

    input[type="checkbox"] {
      accent-color: var(--accent);
    }

    .btn,
    button.btn,
    .auth-actions .btn {
      border: 1px solid rgba(32, 117, 232, 0.2);
      background: linear-gradient(145deg, #39c8e5, #2075e8);
      color: #ffffff;
      box-shadow: 7px 7px 16px rgba(150, 160, 185, 0.42), -7px -7px 16px rgba(255, 255, 255, 0.94);
    }

    .btn.secondary,
    .btn.ghost,
    .auth-actions .btn.secondary {
      border-color: rgba(255, 255, 255, 0.68);
      background: var(--panel);
      color: var(--brand);
      box-shadow: var(--neu-raised-sm);
    }

    .btn.accent {
      border-color: rgba(32, 183, 216, 0.24);
      background: linear-gradient(145deg, #4ad4e7, #20b7d8);
      color: #ffffff;
    }

    .btn.warn {
      border-color: rgba(161, 115, 24, 0.22);
      background: linear-gradient(145deg, #f4c76a, #d79a25);
      color: #60420e;
    }

    .btn.risk {
      border-color: rgba(163, 74, 98, 0.24);
      background: linear-gradient(145deg, #e97d99, #c94e73);
      color: #ffffff;
    }

    .btn:active,
    .topbar-link:active,
    .context-button:active,
    .access-segmented-btn:active {
      transform: translateY(0);
      box-shadow: var(--neu-pressed);
    }

    .btn:disabled,
    .btn.is-disabled,
    .context-button.is-disabled {
      border-color: rgba(255, 255, 255, 0.5);
      background: #e1e7ef;
      color: #96a0b4;
      box-shadow: var(--neu-pressed);
    }

    .badge,
    .pill,
    .scope-chip,
    .vault-focus-count,
    .schema-node-card__count,
    .schema-inspector-chip-row .pill {
      border: 1px solid rgba(255, 255, 255, 0.68);
      background: var(--panel);
      color: var(--muted);
      box-shadow: 4px 4px 10px rgba(150, 160, 185, 0.28), -4px -4px 10px rgba(255, 255, 255, 0.9);
    }

    .badge.brand,
    .pill.brand,
    .scope-chip.brand {
      background: var(--brand-soft);
      color: var(--brand);
    }

    .badge.ok {
      background: var(--ok-soft);
      color: var(--ok);
    }

    .badge.warn {
      background: var(--warn-soft);
      color: var(--warn);
    }

    .badge.risk {
      background: var(--risk-soft);
      color: var(--risk);
    }

    .pill.disabled,
    .badge.disabled {
      background: #e1e7ef;
      color: #96a0b4;
      box-shadow: var(--neu-pressed);
    }

    .auth-gate {
      min-height: 100dvh;
      align-items: center;
      background: transparent;
    }

    .auth-shell {
      --auth-blue-bg: #06185a;
      --auth-blue-panel: #123d9f;
      --auth-blue-panel-soft: #1548ad;
      --auth-blue-panel-strong: #1b53bd;
      --auth-blue-panel-deep: #0f338e;
      --auth-blue-surface: #123f9f;
      --auth-blue-line: rgba(176, 207, 255, 0.16);
      --auth-blue-light: rgba(89, 150, 255, 0.16);
      --auth-blue-dark: rgba(0, 8, 42, 0.44);
      --auth-blue-text: #f8fbff;
      --auth-blue-muted: #b8c9f2;
      --auth-blue-raised: 16px 16px 32px var(--auth-blue-dark), -13px -13px 28px var(--auth-blue-light), inset 2px 2px 4px rgba(218, 235, 255, 0.08), inset -3px -3px 6px rgba(0, 10, 52, 0.14);
      --auth-blue-raised-sm: 7px 7px 15px rgba(0, 10, 52, 0.4), -6px -6px 14px rgba(99, 157, 255, 0.14), inset 2px 2px 3px rgba(218, 235, 255, 0.1), inset -2px -2px 4px rgba(0, 10, 52, 0.16);
      --auth-blue-pressed: inset 10px 10px 22px rgba(0, 10, 52, 0.46), inset -9px -9px 20px rgba(99, 157, 255, 0.13);
      width: min(1040px, 100%);
      grid-template-columns: minmax(0, 0.95fr) minmax(340px, 400px);
      gap: clamp(28px, 5vw, 64px);
      color: var(--auth-blue-text);
    }

    .auth-hero {
      min-height: min(560px, calc(100vh - 110px));
      padding: clamp(14px, 3vw, 30px);
      border-radius: 30px;
      color: var(--auth-blue-text);
      background: transparent;
      border: 0;
      box-shadow: none;
    }

    .auth-brand {
      color: var(--auth-blue-text);
    }

    .auth-logo {
      width: 56px;
      height: 56px;
      padding: 7px;
      border-radius: 18px;
      background: linear-gradient(145deg, var(--auth-blue-panel-strong), var(--auth-blue-panel));
      border: 0;
      box-shadow: var(--auth-blue-raised-sm);
    }

    .auth-wordmark {
      color: var(--auth-blue-text);
      font-size: 1.55rem;
      font-weight: 720;
    }

    .auth-kicker,
    .auth-copy {
      color: var(--auth-blue-muted);
    }

    .auth-kicker {
      font-size: 0.9rem;
    }

    .auth-title {
      color: var(--auth-blue-text);
      font-size: clamp(2.55rem, 5.1vw, 4.15rem);
      line-height: 0.99;
      font-weight: 760;
      max-width: 10.5ch;
    }

    .auth-copy {
      font-size: clamp(0.98rem, 1.2vw, 1.08rem);
      line-height: 1.55;
    }

    .auth-card {
      position: relative;
      overflow: visible;
      gap: 16px;
      padding: clamp(22px, 2.6vw, 30px);
      border-radius: 28px;
      border: 0;
      background:
        radial-gradient(circle at 24% 20%, rgba(89, 150, 255, 0.12), transparent 42%),
        linear-gradient(145deg, #1446aa, var(--auth-blue-surface));
      box-shadow: var(--auth-blue-raised);
    }

    .auth-card::before {
      content: "";
      position: absolute;
      inset: 1px;
      pointer-events: none;
      border-radius: inherit;
      box-shadow:
        inset 3px 3px 7px rgba(218, 235, 255, 0.08),
        inset -5px -5px 10px rgba(0, 10, 52, 0.12);
    }

    .auth-card h2 {
      color: var(--auth-blue-text);
      font-size: clamp(1.32rem, 1.65vw, 1.65rem);
      line-height: 1.12;
      font-weight: 680;
    }

    .auth-card p {
      color: var(--auth-blue-muted);
      font-size: clamp(0.92rem, 1.05vw, 1rem);
    }

    .auth-status {
      padding: 0.48rem 0.75rem;
      border: 0;
      background: linear-gradient(145deg, var(--auth-blue-panel-strong), var(--auth-blue-panel));
      box-shadow: var(--auth-blue-raised-sm);
      color: var(--auth-blue-text);
      font-size: 0.78rem;
      font-weight: 620;
    }

    .auth-status.is-warn {
      background: linear-gradient(145deg, #2682cd, var(--auth-blue-panel-soft));
      color: #e9f8ff;
    }

    .auth-qr-shell {
      position: relative;
      min-height: 270px;
      padding: clamp(18px, 2.4vw, 24px);
      border-radius: 22px;
      border: 0;
      background: linear-gradient(145deg, #123a98, #0f338d);
      box-shadow:
        inset 18px 18px 32px rgba(0, 10, 52, 0.6),
        inset -16px -16px 30px rgba(99, 157, 255, 0.18),
        1px 1px 1px rgba(99, 157, 255, 0.08);
      overflow: hidden;
    }

    .auth-qr-shell::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      border-radius: inherit;
      box-shadow:
        inset 2px 2px 2px rgba(0, 10, 52, 0.34),
        inset -2px -2px 2px rgba(218, 235, 255, 0.13);
    }

    .auth-qr-image {
      width: min(220px, 100%);
      height: min(220px, 100%);
      border-radius: 20px;
      background: #e9f1ff;
      border: 1px solid rgba(225, 239, 255, 0.72);
      box-shadow: var(--auth-blue-raised-sm);
    }

    .auth-qr-empty {
      color: var(--auth-blue-muted);
    }

    .auth-qr-empty strong {
      font-size: 0.96rem;
      color: var(--auth-blue-text);
      font-weight: 700;
    }

    .auth-qr-empty {
      font-size: 0.92rem;
    }

    .auth-actions {
      gap: 12px;
    }

    .auth-actions .btn {
      min-height: 50px;
      border-radius: 16px;
      font-size: 0.96rem;
      font-weight: 700;
      border: 0;
    }

    .auth-actions .btn:not(.secondary) {
      background: linear-gradient(145deg, #39bfd9, #287de2);
      box-shadow: 8px 8px 18px rgba(0, 10, 52, 0.42), -7px -7px 16px rgba(99, 157, 255, 0.16), inset 1px 1px 1px rgba(255, 255, 255, 0.22), inset -1px -1px 1px rgba(0, 10, 52, 0.18);
    }

    .auth-actions .btn:disabled,
    .auth-actions .btn.is-disabled {
      background: linear-gradient(145deg, #123a98, #0f338d);
      color: rgba(184, 201, 242, 0.64);
      box-shadow: var(--auth-blue-pressed);
    }

    .auth-actions .btn.secondary {
      background: linear-gradient(145deg, var(--auth-blue-panel-strong), var(--auth-blue-panel));
      color: var(--auth-blue-text);
      box-shadow: var(--auth-blue-raised-sm);
    }

    .auth-footnote {
      padding: 12px 14px;
      border-radius: 16px;
      border: 0;
      background: linear-gradient(145deg, #123a98, #0f338d);
      box-shadow: var(--auth-blue-pressed);
      color: var(--auth-blue-muted);
      font-size: 0.82rem;
      line-height: 1.45;
    }

    .modal-overlay,
    .vault-sidepanel-backdrop {
      background: rgba(219, 226, 238, 0.58);
      backdrop-filter: blur(14px);
    }

    .vault-sidepanel-backdrop {
      background: transparent;
      backdrop-filter: none;
      pointer-events: none;
    }

    .technical-shell {
      background: var(--panel);
    }

    .sidebar,
    .output {
      position: sticky;
      top: 92px;
    }

    .vault-record-row:hover,
    .home-grant-item:hover,
    .request-card:hover,
    .plugin-card:hover,
    .schema-node-card:hover {
      border-color: rgba(32, 183, 216, 0.2);
      box-shadow: 12px 12px 26px rgba(150, 160, 185, 0.42), -12px -12px 26px rgba(255, 255, 255, 0.98);
    }

    .topbar-link:hover,
    .topbar-link:focus-visible,
    .context-button:hover,
    .context-button:focus-visible,
    .access-segmented-btn:hover,
    .access-segmented-btn:focus-visible {
      color: var(--brand);
    }

    .vault-record-row.is-selected,
    .schema-node-card.is-selected,
    .mapping-flow-rule.is-selected {
      background: rgba(219, 235, 255, 0.72);
      box-shadow: var(--neu-pressed);
    }

    ::selection {
      background: rgba(32, 183, 216, 0.24);
      color: var(--text);
    }

    .topbar {
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 14px;
      padding: 10px 26px;
      background:
        linear-gradient(145deg, rgba(241, 246, 252, 0.88), rgba(223, 230, 241, 0.86)),
        var(--bg);
      border-bottom: 1px solid rgba(255, 255, 255, 0.74);
      box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.72),
        10px 10px 26px rgba(150, 160, 185, 0.2),
        -10px -10px 26px rgba(255, 255, 255, 0.74);
    }

    .topbar-main {
      display: grid;
      grid-template-columns: minmax(220px, auto) minmax(0, 1fr);
      gap: 16px;
      align-items: center;
      justify-content: stretch;
      min-width: 0;
    }

    .identity {
      gap: 12px;
    }

    .identity-mark {
      width: 50px;
      height: 50px;
      border-radius: 18px;
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.94), rgba(222, 230, 242, 0.88)),
        var(--panel);
      border-color: rgba(255, 255, 255, 0.76);
      box-shadow:
        6px 6px 15px rgba(150, 160, 185, 0.24),
        -6px -6px 15px rgba(255, 255, 255, 0.86);
    }

    .identity-mark img {
      object-fit: contain;
      padding: 8px;
    }

    .eyebrow {
      color: #7a879e;
      letter-spacing: 0;
    }

    .title {
      color: #303a51;
      font-size: 1.2rem;
      letter-spacing: 0;
    }

    .topbar-nav {
      justify-self: end;
      flex-wrap: nowrap;
      gap: 4px;
      padding: 5px;
      border-radius: 20px;
      background: rgba(229, 235, 244, 0.62);
      border: 1px solid rgba(255, 255, 255, 0.72);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.17),
        inset -5px -5px 12px rgba(255, 255, 255, 0.78);
      overflow-x: auto;
      scrollbar-width: none;
      max-width: 100%;
    }

    .topbar-nav::-webkit-scrollbar {
      display: none;
    }

    .topbar-link {
      flex: 0 0 auto;
      min-height: 34px;
      padding: 0.48rem 0.82rem;
      border-radius: 15px;
      border-color: transparent;
      background: transparent;
      color: #344057;
      font-weight: 750;
      letter-spacing: 0;
      box-shadow: none;
      white-space: nowrap;
    }

    .topbar-link:hover,
    .topbar-link:focus-visible {
      transform: translateY(-1px);
      color: var(--brand);
      border-color: rgba(255, 255, 255, 0.54);
      background: rgba(239, 244, 251, 0.68);
      box-shadow:
        4px 4px 10px rgba(150, 160, 185, 0.17),
        -4px -4px 10px rgba(255, 255, 255, 0.78);
      outline: none;
    }

    .topbar-link.active {
      color: var(--brand);
      border-color: rgba(32, 117, 232, 0.12);
      background: rgba(224, 238, 255, 0.54);
      box-shadow:
        inset 4px 4px 9px rgba(150, 160, 185, 0.17),
        inset -4px -4px 9px rgba(255, 255, 255, 0.82);
    }

    .profile-toggle {
      min-height: 46px;
      padding: 5px 13px 5px 5px;
      border-radius: 22px;
      border-color: rgba(255, 255, 255, 0.76);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.9), rgba(225, 232, 243, 0.84)),
        var(--panel);
      color: var(--text);
      box-shadow:
        6px 6px 15px rgba(150, 160, 185, 0.22),
        -6px -6px 15px rgba(255, 255, 255, 0.84);
    }

    .profile-toggle:hover,
    .profile-toggle:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(32, 183, 216, 0.24);
      background: rgba(240, 246, 252, 0.92);
      box-shadow:
        7px 7px 17px rgba(150, 160, 185, 0.25),
        -7px -7px 17px rgba(255, 255, 255, 0.88);
    }

    .profile-avatar {
      width: 34px;
      height: 34px;
      box-shadow:
        4px 4px 10px rgba(150, 160, 185, 0.28),
        -4px -4px 10px rgba(255, 255, 255, 0.78);
    }

    .profile-name {
      color: #303a51;
      font-size: 0.84rem;
    }

    .profile-status {
      color: #717d93;
      font-size: 0.72rem;
    }

    #view-data-sources {
      gap: 16px;
    }

    #view-data-sources .page-head,
    #view-data-sources .cluster.panel {
      border: 1px solid rgba(255, 255, 255, 0.72);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.78), rgba(226, 232, 242, 0.72)),
        var(--panel);
      box-shadow:
        12px 12px 28px rgba(150, 160, 185, 0.26),
        -12px -12px 28px rgba(255, 255, 255, 0.82);
    }

    #view-data-sources .page-head {
      align-items: center;
      min-height: 118px;
      padding: 24px 28px;
      border-radius: 22px;
    }

    #view-data-sources .page-head h2 {
      font-size: 1.15rem;
      letter-spacing: 0;
    }

    #view-data-sources .page-head .section-copy {
      max-width: 58ch;
      font-size: 0.95rem;
      line-height: 1.55;
    }

    #view-data-sources .head-actions .btn {
      min-height: 42px;
      padding-inline: 18px;
      border-radius: 16px;
    }

    #plugins-catalog {
      gap: 22px;
      padding: 26px 28px 30px;
      border-radius: 22px;
    }

    #plugins-catalog .section-title {
      align-items: stretch;
      gap: 18px;
      margin-bottom: 2px;
    }

    #plugins-catalog .section-title > div:first-child {
      display: grid;
      align-content: center;
      gap: 4px;
      min-width: min(100%, 440px);
    }

    #plugins-catalog .section-title h3 {
      font-size: 1.12rem;
      letter-spacing: 0;
    }

    #plugins-catalog .section-title .section-copy {
      font-size: 0.92rem;
      line-height: 1.5;
    }

    #plugins-catalog .toolbar {
      align-self: start;
      display: grid;
      grid-template-columns: minmax(260px, 1fr);
      justify-items: start;
      min-width: min(100%, 360px);
      padding: 10px;
      border-radius: 20px;
      background: rgba(232, 237, 246, 0.72);
      box-shadow:
        inset 7px 7px 15px rgba(150, 160, 185, 0.22),
        inset -7px -7px 15px rgba(255, 255, 255, 0.86);
    }

    #plugins-catalog .toolbar input {
      width: 100%;
      min-width: 0;
      min-height: 42px;
      border-radius: 15px;
      border-color: rgba(255, 255, 255, 0.74);
      background: rgba(244, 247, 252, 0.82);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.2),
        inset -5px -5px 12px rgba(255, 255, 255, 0.88);
    }

    #plugins-catalog .toolbar .badge {
      margin-top: 4px;
    }

    #plugins-catalog .cards {
      grid-template-columns: repeat(auto-fill, minmax(292px, 1fr));
      gap: 18px;
      align-items: stretch;
    }

    #view-data-sources .plugin-card {
      position: relative;
      min-height: 264px;
      padding: 20px;
      border-radius: 22px;
      border-color: rgba(255, 255, 255, 0.72);
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.86), rgba(227, 233, 243, 0.82)),
        var(--panel);
      box-shadow:
        9px 9px 22px rgba(150, 160, 185, 0.24),
        -9px -9px 22px rgba(255, 255, 255, 0.82);
      gap: 16px;
    }

    #view-data-sources .plugin-card:hover,
    #view-data-sources .plugin-card:focus-visible {
      transform: translateY(-1px);
      border-color: rgba(32, 183, 216, 0.24);
      box-shadow:
        12px 12px 26px rgba(150, 160, 185, 0.28),
        -12px -12px 26px rgba(255, 255, 255, 0.9);
    }

    #view-data-sources .plugin-card.active {
      border-color: rgba(32, 183, 216, 0.32);
      background:
        linear-gradient(145deg, rgba(241, 248, 253, 0.92), rgba(225, 233, 243, 0.82)),
        var(--panel);
      box-shadow:
        inset 5px 5px 12px rgba(150, 160, 185, 0.2),
        inset -5px -5px 12px rgba(255, 255, 255, 0.82),
        8px 8px 20px rgba(150, 160, 185, 0.18);
    }

    #view-data-sources .plugin-card__head {
      grid-template-columns: 54px minmax(0, 1fr);
      align-items: center;
      gap: 14px;
    }

    #view-data-sources .plugin-card__icon {
      width: 54px;
      height: 54px;
      border-radius: 17px;
      border-color: rgba(255, 255, 255, 0.62);
      background: linear-gradient(145deg, rgba(244, 247, 252, 0.94), rgba(214, 222, 234, 0.86));
      box-shadow:
        5px 5px 12px rgba(150, 160, 185, 0.24),
        -5px -5px 12px rgba(255, 255, 255, 0.88);
    }

    #view-data-sources .plugin-card h3 {
      font-size: 1.02rem;
      letter-spacing: 0;
      margin-bottom: 3px;
    }

    #view-data-sources .plugin-card .meta {
      font-size: 0.88rem;
      line-height: 1.36;
    }

    #view-data-sources .plugin-card__description {
      min-height: 4.4em;
      color: #68758d;
      font-size: 0.94rem;
      line-height: 1.55;
    }

    #view-data-sources .plugin-card .tags {
      gap: 8px;
    }

    #view-data-sources .plugin-card .badge {
      padding: 4px 9px;
      box-shadow:
        3px 3px 8px rgba(150, 160, 185, 0.22),
        -3px -3px 8px rgba(255, 255, 255, 0.86);
    }

    #view-data-sources .plugin-card__footer {
      display: grid;
      gap: 14px;
      align-items: end;
    }

    #view-data-sources .plugin-card__actions {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    #view-data-sources .plugin-card__actions .btn {
      min-width: 0;
      min-height: 40px;
      padding: 0.62rem 0.9rem;
      border-radius: 15px;
      font-size: 0.92rem;
      box-shadow:
        5px 5px 13px rgba(150, 160, 185, 0.25),
        -5px -5px 13px rgba(255, 255, 255, 0.88);
    }

    #view-data-sources .plugin-card__actions .btn.secondary {
      background: rgba(235, 240, 248, 0.9);
    }

    #view-data-sources .plugin-card__actions .btn.accent {
      background: linear-gradient(145deg, #43cfe2, #21b7d5);
    }

    #view-data-sources #pluginDetail {
      border-radius: 22px;
      padding: 24px;
      background:
        linear-gradient(145deg, rgba(247, 250, 254, 0.84), rgba(226, 232, 242, 0.76)),
        var(--panel);
    }

    #view-data-sources .is-hidden-config-field {
      display: none;
    }

    #view-data-sources .plugin-detail--simple-withings {
      gap: 18px;
    }

    #view-data-sources .plugin-detail--simple-withings .pill-row {
      gap: 8px;
    }

    #view-data-sources .plugin-detail--simple-withings .surface-note {
      border-radius: 18px;
      border-color: rgba(255, 255, 255, 0.72);
      background: rgba(231, 238, 248, 0.76);
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.18),
        inset -6px -6px 14px rgba(255, 255, 255, 0.82);
    }

    #view-data-sources .plugin-config-simple {
      grid-template-columns: minmax(220px, 0.72fr) minmax(220px, 0.72fr) minmax(280px, 1fr);
      align-items: start;
    }

    #view-data-sources .plugin-config-simple .field.full {
      grid-column: 1 / -1;
    }

    #view-data-sources .plugin-config-simple .field-checkbox-group {
      grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
      gap: 10px;
      padding: 12px;
      border-radius: 18px;
      border-color: rgba(255, 255, 255, 0.72);
      background: rgba(232, 237, 246, 0.72);
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.18),
        inset -6px -6px 14px rgba(255, 255, 255, 0.82);
    }

    #view-data-sources .plugin-config-simple .field-checkbox-option {
      min-height: 46px;
      border-radius: 15px;
      background: rgba(242, 245, 250, 0.84);
      box-shadow:
        4px 4px 10px rgba(150, 160, 185, 0.18),
        -4px -4px 10px rgba(255, 255, 255, 0.78);
    }

    #view-data-sources .plugin-config-simple .field-checkbox-option:has(input:checked) {
      color: var(--brand);
      background: rgba(217, 232, 255, 0.76);
      box-shadow:
        inset 4px 4px 10px rgba(150, 160, 185, 0.18),
        inset -4px -4px 10px rgba(255, 255, 255, 0.82);
    }

    #view-data-sources .plugin-advanced-config,
    #view-data-sources .plugin-backfill-panel {
      border: 1px solid rgba(255, 255, 255, 0.72);
      border-radius: 18px;
      background: rgba(232, 237, 246, 0.58);
      box-shadow:
        inset 6px 6px 14px rgba(150, 160, 185, 0.16),
        inset -6px -6px 14px rgba(255, 255, 255, 0.78);
      padding: 0;
      overflow: hidden;
    }

    #view-data-sources .plugin-advanced-config summary,
    #view-data-sources .plugin-backfill-panel summary {
      cursor: pointer;
      list-style: none;
      padding: 15px 18px;
      color: var(--text);
      font-weight: 800;
    }

    #view-data-sources .plugin-advanced-config summary::-webkit-details-marker,
    #view-data-sources .plugin-backfill-panel summary::-webkit-details-marker {
      display: none;
    }

    #view-data-sources .plugin-advanced-config summary::after,
    #view-data-sources .plugin-backfill-panel summary::after {
      content: "+";
      float: right;
      color: var(--brand);
      font-size: 1.05rem;
    }

    #view-data-sources .plugin-advanced-config[open] summary::after,
    #view-data-sources .plugin-backfill-panel[open] summary::after {
      content: "-";
    }

    #view-data-sources .plugin-advanced-config > .mini-copy,
    #view-data-sources .plugin-backfill-panel > .mini-copy,
    #view-data-sources .plugin-backfill-panel > .row,
    #view-data-sources .plugin-backfill-panel > .actions,
    #view-data-sources .plugin-advanced-config__grid {
      margin: 0 18px 18px;
    }

    #view-data-sources .plugin-advanced-config__grid {
      padding-top: 4px;
    }

    #view-data-sources .plugin-detail--simple-withings #dynamicConfigForm > .actions {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, max-content));
      justify-content: start;
      gap: 10px;
    }

    #view-data-sources .plugin-detail--simple-withings #dynamicConfigForm > .actions .btn {
      min-height: 40px;
      border-radius: 15px;
      padding: 0.62rem 0.95rem;
    }

    @media (max-width: 1300px) {
      .workspace {
        grid-template-columns: minmax(0, 1fr);
      }
      body.show-debug .workspace {
        grid-template-columns: minmax(0, 1fr);
      }
      body.show-debug .output {
        position: static;
        grid-column: 1 / -1;
      }
    }

    @media (max-width: 1060px) {
      .topbar {
        grid-template-columns: 1fr;
      }
      .workspace {
        grid-template-columns: 1fr;
      }
      .home-workspace-grid,
      .home-rail-footer,
      .home-ops-grid {
        grid-template-columns: 1fr;
      }
      .schema-graph-layout {
        grid-template-columns: 1fr;
      }
      .schema-graph-toolbar-shell {
        position: static;
      }
      .schema-graph-toolbar {
        grid-template-columns: 1fr;
      }
      .schema-graph-lanes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .sidebar {
        position: static;
      }
      .summary-strip,
      .grid-2,
      .admin-summary-strip,
      .admin-overview-grid,
      .admin-invite-form,
      .admin-panel-grid,
      .grid-3,
      .home-grant-grid,
      .home-request-grid,
      .row,
      .vault-filter-row,
      .compact-grid,
      .vault-browser,
      #view-data-vault .vault-filter-row,
      #view-access .access-mode-bar,
      #view-access #accessOwnerSections,
      #view-access #accessActorSections {
        grid-template-columns: 1fr;
      }
      #view-access .access-flow-steps,
      #view-access .access-form-grid,
      #view-access .access-confirm-actions,
      #view-access .access-choice-grid,
      #view-access .access-grant-summary-grid {
        grid-template-columns: 1fr;
      }
      #view-access .access-flow-step {
        border-left: 0;
        border-top: 0;
        min-height: auto;
      }
      #view-access .access-flow-step:first-child {
        border-top: 0;
      }
      #view-access .access-direction-step {
        border-top: 0;
      }
      #view-access .access-direction-step .access-mode-bar {
        grid-template-columns: 1fr;
      }
      #view-access .access-wizard-progress {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        max-width: 420px;
        padding: 10px 12px;
      }
      #view-access .access-wizard-progress::before {
        left: 42px;
        right: 42px;
        top: 30px;
      }
      #view-access .access-wizard-progress-step {
        min-height: 58px;
        padding: 0;
        font-size: 0.68rem;
      }
      #view-access .access-wizard-progress-step .access-step-icon {
        width: 38px;
        height: 38px;
        font-size: 0.86rem;
      }
      #view-access .access-wizard-progress-step:not(:last-child)::after {
        left: calc(50% + 20px);
        right: calc(-50% + 20px);
        top: 19px;
      }
      #view-access .access-wizard-progress-step > span:not(.access-step-icon) {
        display: none;
      }
      .auth-shell {
        grid-template-columns: 1fr;
        width: min(560px, 100%);
      }
      .auth-hero {
        min-height: auto;
      }
      #view-data-vault #pod-data-overview .head-actions,
      #view-data-vault .vault-panel-meta {
        justify-self: start;
      }
      #view-data-vault #pod-data-overview .head-actions {
        justify-content: flex-start;
      }
      #view-data-vault .vault-panel-meta {
        width: 100%;
        text-align: left;
      }
      #view-data-vault .vault-mode-switch {
        width: 100%;
      }
      #view-data-vault .vault-mode-btn {
        flex: 1 1 0;
        min-width: 0;
      }
      .vault-drawer {
        top: 88px;
        right: 12px;
        left: 12px;
        bottom: 12px;
        width: auto;
      }
      .vault-browser.has-sidepanel .vault-list-panel {
        margin-right: 0;
      }
      .vault-sidepanel-backdrop {
        background: transparent;
        pointer-events: none;
      }
      .vault-table-shell,
      .vault-json {
        max-height: none;
      }
      .vault-drawer-meta {
        grid-template-columns: 1fr;
      }
      .vault-detail-summary {
        grid-template-columns: 1fr;
      }
      .vault-record-table {
        min-width: 900px;
      }
      .home-data-header {
        display: none;
      }
      .home-data-row {
        grid-template-columns: 1fr;
        gap: 12px;
      }
      .home-inspector .home-status-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      .home-inspector #home-signal {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .topbar {
        grid-template-columns: 1fr;
        gap: 12px;
        padding-inline: 18px;
      }
      .topbar-main {
        grid-template-columns: 1fr;
        gap: 12px;
      }
      .topbar-nav {
        justify-self: stretch;
      }
      .profile-shell {
        justify-self: start;
      }
      #plugins-catalog .section-title {
        display: grid;
        grid-template-columns: 1fr;
      }
      #plugins-catalog .toolbar {
        width: 100%;
        min-width: 0;
      }
      #view-data-sources .plugin-config-simple,
      #view-data-sources .plugin-detail--simple-withings #dynamicConfigForm > .actions {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 640px) {
      .topbar,
      .workspace,
      .auth-gate {
        padding-left: 14px;
        padding-right: 14px;
      }
      .topbar-link {
        flex: 0 0 auto;
      }
      .home-start-head,
      .home-panel-head {
        align-items: stretch;
        flex-direction: column;
      }
      .home-quick-links,
      .home-panel-actions {
        justify-content: flex-start;
      }
      .home-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .admin-summary-strip {
        grid-template-columns: 1fr;
      }
      .admin-panel {
        padding: 16px;
      }
      .admin-table {
        min-width: 680px;
      }
      .admin-detail-row {
        grid-template-columns: 1fr;
        gap: 2px;
      }
      .wallet-hero {
        grid-template-columns: 1fr;
        align-items: stretch;
        padding: 18px;
      }
      .wallet-hero h2 {
        white-space: normal;
      }
      .wallet-hero-actions {
        justify-content: flex-start;
      }
      .wallet-section-head,
      .wallet-token-create-form,
      .wallet-token-secret {
        display: grid;
        grid-template-columns: 1fr;
      }
      .page-head {
        padding: 18px;
      }
      .vault-focus-strip {
        align-items: stretch;
      }
      .vault-focus-shell,
      .vault-density-shell {
        width: 100%;
      }
      .home-rail,
      .home-focus-card,
      .home-compact-panel,
      .home-panel {
        padding: 18px;
      }
      .home-rail-head {
        flex-direction: column;
      }
      .home-rail-context {
        justify-content: flex-start;
      }
      .home-command-actions {
        grid-template-columns: 1fr;
      }
      .home-inspector .home-status-strip,
      .home-inspector #home-signal {
        grid-template-columns: 1fr;
      }
      body[data-current-view="home"] #liveContextSection .sidebar-section-actions {
        grid-template-columns: 1fr;
      }
      .cluster {
        padding: 16px;
      }
      .schema-category-lane {
        padding: 14px;
      }
      .schema-category-grid {
        grid-template-columns: 1fr;
      }
      .schema-category-card {
        grid-template-columns: 42px minmax(0, 1fr) auto;
        grid-template-areas:
          "icon title count"
          "icon detail count";
        min-height: 0;
        padding: 16px;
      }
      .schema-category-card__icon {
        width: 42px;
        height: 42px;
      }
      .schema-category-card__count {
        align-self: center;
      }
      .schema-drill-panel {
        padding: 16px;
      }
      .schema-drill-nav,
      .schema-drill-head {
        align-items: stretch;
        flex-direction: column;
      }
      .schema-drill-crumbs {
        justify-content: flex-start;
      }
      .schema-drill-table {
        min-width: 680px;
      }
      #view-data-sources .page-head {
        align-items: stretch;
        min-height: 0;
        padding: 18px;
        flex-direction: column;
      }
      #view-data-sources .head-actions .btn,
      #view-data-sources .plugin-card__actions .btn {
        width: 100%;
      }
      #plugins-catalog {
        padding: 18px;
      }
      #plugins-catalog .cards {
        grid-template-columns: 1fr;
      }
      #plugins-catalog .toolbar {
        grid-template-columns: 1fr;
      }
      #view-data-sources .plugin-card {
        min-height: 0;
        padding: 18px;
      }
      #view-data-sources .plugin-card__actions {
        grid-template-columns: 1fr;
      }
      #view-access .section-title {
        flex-direction: column;
        align-items: stretch;
      }
      #view-access .section-title .access-action-toolbar {
        grid-template-columns: 1fr;
        max-width: none;
      }
      .schema-graph-lanes,
      .schema-registry-grid,
      .schema-relationship-grid {
        grid-template-columns: 1fr;
      }
      .mapping-flow-toolbar {
        align-items: stretch;
      }
      .mapping-flow-toolbar select {
        width: 100%;
        min-width: 0;
      }
      .mapping-flow-rule__path {
        grid-template-columns: 1fr;
      }
      .schema-inspector-row {
        grid-template-columns: 1fr;
        gap: 4px;
      }
      .auth-hero {
        padding: 0;
        gap: 18px;
        min-height: auto;
        background: transparent;
      }
      .auth-brand {
        min-height: 36px;
      }
      .auth-logo {
        width: 52px;
        height: 52px;
        border-radius: 17px;
      }
      .auth-card {
        padding: 20px;
        border-radius: 24px;
      }
      .auth-title {
        max-width: none;
        font-size: clamp(2.2rem, 11vw, 3.25rem);
      }
      .auth-qr-shell {
        min-height: 260px;
        border-radius: 22px;
      }
      .auth-qr-image {
        width: min(76vw, 240px);
        height: min(76vw, 240px);
      }
    }
