@font-face {
  font-family: "NysaFondamento";
  font-display: swap;
  src: url("../fonts/Fondamento-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "NysaGhef";
  font-display: swap;
  src: url("../fonts/Ghefayjro.ttf") format("truetype");
}

:root {
  color-scheme: dark;
  --bg: #08090a;
  --surface: rgba(10, 13, 12, 0.78);
  --surface-strong: rgba(20, 26, 23, 0.88);
  --line: rgba(255, 255, 255, 0.16);
  --line-soft: rgba(255, 255, 255, 0.08);
  --text: #f7f1e7;
  --muted: rgba(247, 241, 231, 0.68);
  --accent: #d8b85a;
  --accent-2: #45c89f;
  --danger: #d96f5f;
  --copper: #d19b6f;
  --plum: #4c365f;
  --glass: rgba(5, 7, 8, 0.72);
  --glass-strong: rgba(4, 5, 6, 0.92);
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.48);
  --soft-shadow: 0 14px 38px rgba(0, 0, 0, 0.32);
  --console-gradient: linear-gradient(180deg, rgba(76, 54, 95, 0.34), rgba(0, 0, 0, 0.62));
  --brand-font: "NysaGhef", "NysaFondamento", Georgia, serif;
  --content-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --display-font: "NysaFondamento", Georgia, serif;
  font-family: var(--content-font);
}

/* Profile contract:
   - shared shell geometry owns fixed rails, workspace padding, drawers, and DOM nav.
   - shell-size-* may scale spacing and control size only.
   - shell-profile-* skins density, typography, color, texture, and decoration. */
:root {
  --profile-radius: 7px;
  --profile-card-padding: 0.85rem;
  --profile-control-min-height: 2.35rem;
  --profile-content-density: 1;
  --profile-shell-backdrop-filter: blur(14px) saturate(1.08);
  --profile-card-shadow: var(--soft-shadow);
  --profile-route-gap: 1rem;
  --profile-grid-gap: 0.85rem;
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

.visually-hidden,
.sr-only {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

.skip-link {
  background: #fff6cf;
  border: 2px solid #d8b85a;
  border-radius: 0.35rem;
  color: #111;
  font-weight: 800;
  left: 0.75rem;
  padding: 0.65rem 0.9rem;
  position: fixed;
  top: 0.75rem;
  transform: translateY(calc(-100% - 1.5rem));
  transition: transform 120ms ease;
  z-index: 10000;
}

.skip-link:focus,
.skip-link:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 2px;
  transform: translateY(0);
}

html,
body {
  min-height: 100%;
  margin: 0;
  max-width: 100%;
  overflow-x: hidden;
}

body {
  background:
    radial-gradient(circle at 12% 0%, rgba(69, 200, 159, 0.08), transparent 28rem),
    radial-gradient(circle at 88% 2%, rgba(216, 184, 90, 0.08), transparent 30rem),
    linear-gradient(180deg, #08090a, #10140f 44%, #08090a);
  color: var(--text);
}

a {
  color: inherit;
}

button,
.button {
  border: 1px solid var(--line);
  background: var(--surface-strong);
  color: var(--text);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  justify-content: center;
  min-height: var(--profile-control-min-height);
  min-width: 0;
  padding: 0.55rem 0.7rem;
  text-decoration: none;
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, color 160ms ease;
}

button:hover,
.button:hover {
  border-color: color-mix(in srgb, var(--accent-2) 64%, var(--line));
  background: color-mix(in srgb, var(--surface-strong) 82%, var(--accent-2) 18%);
}

button:focus-visible,
.button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--accent-2) 64%, transparent);
  outline-offset: 2px;
  box-shadow: 0 0 0 1px rgba(69, 200, 159, 0.35), 0 0 24px rgba(69, 200, 159, 0.12);
}

.app-shell {
  display: grid;
  grid-template-columns: minmax(15rem, 18rem) minmax(0, 1fr);
  min-height: 100vh;
  max-width: 100%;
}

.app-nav {
  border-right: 1px solid var(--line);
  display: grid;
  gap: 1rem;
  grid-template-rows: auto auto 1fr auto;
  max-height: 100vh;
  overflow: auto;
  padding: 1rem;
}

.brand-mark {
  align-items: center;
  display: inline-flex;
  gap: 0.75rem;
  text-decoration: none;
}

.brand-sigil {
  align-items: center;
  aspect-ratio: 1;
  background:
    radial-gradient(circle at 35% 20%, rgba(255, 255, 255, 0.32), transparent 32%),
    linear-gradient(145deg, var(--accent), var(--copper));
  color: #17140a;
  display: inline-flex;
  font-family: var(--display-font);
  font-weight: 800;
  justify-content: center;
  box-shadow: 0 0 22px rgba(216, 184, 90, 0.22);
  width: 2.25rem;
}

.brand-mark span:last-child {
  display: grid;
}

.brand-mark strong,
.shell-brand strong {
  font-family: var(--display-font);
  font-weight: 700;
}

.brand-mark small,
.session-chip small,
.nav-section small,
.eyebrow,
.contract-list dt,
.muted {
  color: var(--muted);
}

.nav-toggle {
  display: none;
}

.nav-list {
  display: grid;
  gap: 1rem;
}

.nav-section {
  display: grid;
  gap: 0.35rem;
}

.nav-section h2 {
  color: var(--accent-2);
  font-size: 0.72rem;
  letter-spacing: 0;
  margin: 0 0 0.2rem;
  text-transform: uppercase;
}

.nav-section a {
  align-items: center;
  border-left: 3px solid transparent;
  display: flex;
  gap: 0.6rem;
  justify-content: space-between;
  padding: 0.48rem 0.55rem;
  text-decoration: none;
}

.nav-section a:hover,
.nav-section a[aria-current="page"] {
  background: var(--surface-strong);
  border-left-color: var(--accent);
}

.nav-subroutes {
  border-left: 1px solid var(--line);
  display: grid;
  gap: 0.2rem;
  margin: 0.15rem 0 0.35rem 0.75rem;
  padding-left: 0.55rem;
}

.nav-subroutes a {
  font-size: 0.9rem;
  padding-block: 0.36rem;
}

.session-chip {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.15rem;
  padding: 0.65rem 0.75rem;
}

.nav-identity-block {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 0.55rem 0.7rem;
  margin: 0.65rem 0;
  padding: 0.7rem;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 0.85rem;
  background: rgba(8,12,24,0.72);
}

.nav-identity-block__avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255,255,255,0.09) center/cover no-repeat;
}

.nav-identity-block__copy {
  display: grid;
  min-width: 0;
  gap: 0.12rem;
}

.nav-identity-block__copy > * {
  overflow-wrap: anywhere;
}

.nav-identity-block__copy span,
.nav-identity-block__copy small {
  font-size: 0.72rem;
  line-height: 1.25;
}

.nav-identity-block__admin {
  width: fit-content;
  padding: 0.1rem 0.42rem;
  border-radius: 999px;
  background: rgba(231,187,79,0.18);
  color: #f4d67d;
  font-weight: 700;
}

.nav-identity-block > button {
  grid-column: 1 / -1;
  min-height: 42px;
}

.nav-identity-block__warning {
  grid-column: 1 / -1;
  margin: 0;
  color: #ffd39b;
  font-size: 0.75rem;
  line-height: 1.3;
}

.aggregate-workbench-index {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.aggregate-workbench-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(250px, 0.8fr);
  gap: 1rem;
  align-items: start;
}

.aggregate-index-controls .shell-card-browser-control-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.aggregate-index-controls button,
.aggregate-index-card .button,
.shell-session-destinations a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.aggregate-index-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 1rem;
  min-width: 0;
}

.aggregate-index-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  min-width: 0;
  overflow: hidden;
}

.aggregate-index-card__art {
  min-height: 100%;
  background: rgba(255,255,255,0.06) center/cover no-repeat;
}

.aggregate-index-card__body {
  display: grid;
  gap: 0.7rem;
  padding: 0.9rem;
  min-width: 0;
}

.aggregate-index-card__body > header {
  display: flex;
  justify-content: space-between;
  gap: 0.7rem;
  align-items: start;
}

.aggregate-index-card__body h2 {
  margin: 0;
  overflow-wrap: anywhere;
}

.aggregate-index-alert {
  margin: 0;
  padding: 0.55rem 0.7rem;
  border-left: 3px solid #d98d43;
  background: rgba(217,141,67,0.1);
}

.aggregate-index-grid--compact {
  grid-template-columns: 1fr;
}

.aggregate-index-grid--compact .aggregate-index-card {
  grid-template-columns: 64px minmax(0, 1fr);
}

.shell-session-destinations {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 0.45rem;
  margin-top: 0.75rem;
}

@media (max-width: 700px) {
  .aggregate-workbench-hero { grid-template-columns: 1fr; }
  .aggregate-index-card { grid-template-columns: 68px minmax(0, 1fr); }
  .aggregate-index-card__body > header { align-items: flex-start; }
}

@media (max-width: 430px) {
  .nav-identity-block { padding: 0.55rem; }
  .aggregate-index-card { grid-template-columns: 1fr; }
  .aggregate-index-card__art { min-height: 90px; }
  .aggregate-index-card__body { padding: 0.75rem; }
  .aggregate-index-card__body > header { display: grid; }
}

.login-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.55rem;
  margin-top: 0.5rem;
  padding-top: 0.65rem;
}

.login-form label,
.deck-toolbar label {
  display: grid;
  gap: 0.3rem;
}

.login-form label span,
.deck-toolbar label span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.login-form input,
.deck-toolbar input,
.deck-toolbar select {
  background: rgba(0, 0, 0, 0.42);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.25rem;
  padding: 0.45rem 0.55rem;
  width: 100%;
}

.logout-button {
  margin-top: 0.5rem;
}

.app-main {
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
  padding: 1.4rem;
}

.page-frame {
  display: grid;
  gap: 1rem;
  margin: 0 auto;
  max-width: 72rem;
  min-width: 0;
  width: 100%;
}

.page-frame--ops,
.page-frame--admin {
  max-width: 96rem;
}

.eyebrow {
  font-size: 0.78rem;
  margin: 0 0 0.35rem;
  text-transform: uppercase;
}

h1,
h2,
p {
  margin-top: 0;
}

h1 {
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1;
  margin-bottom: 0;
}

h2 {
  font-size: 1rem;
}

.page-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

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

.surface-panel,
.state-box {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent 38%),
    var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--profile-radius);
  box-shadow: var(--soft-shadow), inset 0 0 0 1px rgba(255, 255, 255, 0.025);
  min-width: 0;
  overflow-wrap: anywhere;
  padding: var(--profile-card-padding);
}

.surface-panel > header {
  min-width: 0;
}

.surface-panel > header:not(.quest-panel-header):not(.nysa-compact-hero) {
  align-items: start;
  border-bottom: 1px solid var(--line-soft);
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  justify-content: space-between;
  margin: -0.1rem 0 0.75rem;
  padding-bottom: 0.65rem;
}

.surface-panel > header :is(h2, h3),
.quest-panel-header :is(h2, h3) {
  font-family: var(--display-font);
  letter-spacing: 0;
  line-height: 1.08;
  margin: 0;
}

.surface-panel > header p,
.quest-panel-header p {
  color: var(--muted);
  margin: 0.22rem 0 0;
  max-width: 68ch;
}

.surface-panel--wide {
  grid-column: 1 / -1;
}

.nysa-compact-card {
  border-left: 0.3rem solid var(--nysa-state-color, var(--line));
  border-radius: var(--profile-radius);
  padding: var(--profile-card-padding);
}

.admin-ops-stat.nysa-compact-card,
.admin-ops-row.nysa-compact-card {
  border-left-color: var(--nysa-state-color, var(--line));
  padding-left: 0.85rem;
}

.console-status-card.nysa-compact-card,
.console-attention-item.nysa-compact-card,
.journal-row-wrap.nysa-compact-card {
  border-left-color: var(--nysa-state-color, var(--line));
  padding-left: 0.85rem;
}

.journal-row-wrap.nysa-compact-card {
  display: grid;
}

.nysa-compact-hero,
.nysa-compact-card > header {
  align-items: start;
  display: flex;
  gap: 0.8rem;
  justify-content: space-between;
}

.nysa-compact-hero h2,
.nysa-compact-hero h3,
.nysa-compact-card > header h2,
.nysa-compact-card > header h3 {
  font-family: var(--display-font);
  letter-spacing: 0;
  margin: 0;
}

.nysa-essentials {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.nysa-essentials div {
  background: color-mix(in srgb, var(--surface-strong) 82%, transparent);
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.65rem;
}

.nysa-essentials dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.nysa-essentials dd {
  font-weight: 800;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.nysa-info-drawer {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.75rem;
  padding: 0.7rem 0.8rem;
}

.nysa-info-drawer[open] {
  background: color-mix(in srgb, var(--surface-strong) 64%, transparent);
}

.nysa-info-drawer summary {
  color: var(--text);
  cursor: pointer;
  font-family: var(--display-font);
  font-weight: 800;
  letter-spacing: 0;
}

.nysa-info-drawer > *:not(summary) {
  margin-top: 0.75rem;
}

.nysa-state-pill {
  border: 1px solid var(--nysa-state-color, var(--line));
  color: var(--nysa-state-color, var(--muted));
  flex: 0 0 auto;
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  padding: 0.22rem 0.5rem;
  text-transform: uppercase;
}

.nysa-state-active {
  --nysa-state-color: var(--accent);
}

.nysa-state-complete {
  --nysa-state-color: #60d394;
}

.nysa-state-draft {
  --nysa-state-color: #8fb8ff;
}

.nysa-state-muted {
  --nysa-state-color: #8f8a7c;
}

.nysa-state-neutral {
  --nysa-state-color: var(--line);
}

.route-template {
  display: grid;
  gap: var(--profile-route-gap);
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.route-template > * {
  max-width: 100%;
  min-width: 0;
}

.route-template :is(.surface-panel, .state-box, form, fieldset, label) {
  min-width: 0;
}

.route-template :is(input, select, textarea, output) {
  max-width: 100%;
  min-width: 0;
}

.route-template :is(pre, code) {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.route-template pre {
  overflow: auto;
  white-space: pre-wrap;
}

.route-template :is(img, svg, canvas, video, iframe) {
  height: auto;
  max-width: 100%;
}

.state-box:empty {
  display: none;
}

.route-template--dom-tabs,
.route-template--dom-section,
.route-template--activity {
  align-content: start;
}

.route-template--workbench,
.route-template--card-grid {
  max-width: 100%;
}

[data-route-host] {
  touch-action: pan-y;
}

[data-route-host].is-dom-swipe-left,
[data-route-host].is-dom-swipe-right {
  animation-duration: 260ms;
  animation-timing-function: cubic-bezier(0.2, 0.8, 0.2, 1);
}

[data-route-host].is-dom-swipe-left {
  animation-name: dom-swipe-left;
}

[data-route-host].is-dom-swipe-right {
  animation-name: dom-swipe-right;
}

[data-dom-nav-pager="true"] [data-dom-nav-section].is-dom-page-active {
  display: grid;
  min-width: 0;
  width: 100%;
}

@keyframes dom-swipe-left {
  0% {
    opacity: 0.86;
    transform: translateX(1.15rem);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes dom-swipe-right {
  0% {
    opacity: 0.86;
    transform: translateX(-1.15rem);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-route-host].is-dom-swipe-left,
  [data-route-host].is-dom-swipe-right {
    animation: none;
  }

  .shell-dom-nav button {
    transition: none;
  }
}

.route-template--activity .runtime-feed {
  display: grid;
  gap: 0.7rem;
}

.route-template--activity .runtime-feed article {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.3rem;
  min-width: 0;
  padding: 0.75rem;
}

.route-template--activity .runtime-feed strong,
.route-template--activity .runtime-feed small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.route-template--activity .runtime-feed small {
  color: var(--muted);
}

.home-dashboard {
  display: grid;
  gap: 1rem;
}

.character-home,
.character-home__member {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.character-home__identity {
  align-items: center;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(9rem, 13rem) minmax(0, 1fr);
}

.character-home__avatar {
  aspect-ratio: 4 / 5;
  background-color: var(--surface-strong);
  background-position: center;
  background-size: cover;
  border: 1px solid var(--line);
  box-shadow: 0 1rem 2.6rem rgba(0, 0, 0, 0.3);
  max-width: 13rem;
  width: 100%;
}

.character-home__identity-copy,
.character-home__summary,
.character-home__action-list,
.character-home__quest-details,
.character-home__notice-list,
.character-home__recognition-list,
.character-home__entity-list,
.character-home [data-character-home-participation] {
  display: grid;
  gap: 0.75rem;
  min-width: 0;
}

.character-home__identity-copy h1,
.character-home :is(h2, h3, p) {
  margin-block: 0;
}

.character-home__acting {
  border-left: 0.2rem solid var(--accent-2);
  color: var(--muted);
  padding-left: 0.75rem;
}

.character-home :is(.character-home__participation, .character-home__next, .character-home__quest, .character-home__return, .character-home__recognition, .character-home__entities) > header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.character-home__participation-card {
  background: linear-gradient(145deg, color-mix(in srgb, var(--surface-strong) 88%, var(--accent) 12%), color-mix(in srgb, var(--surface) 92%, var(--accent-2) 8%));
  border: 1px solid color-mix(in srgb, var(--accent-2) 45%, var(--line));
  display: grid;
  gap: 1rem;
  min-width: 0;
  padding: clamp(1rem, 3vw, 1.5rem);
}

.character-home__participation-card > header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.character-home__participation-progress {
  background: color-mix(in srgb, var(--accent-2) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent-2) 50%, var(--line));
  border-radius: 999px;
  flex: 0 0 auto;
  padding: 0.35rem 0.7rem;
}

.character-home__participation-objective,
.character-home__checkpoint-state,
.character-home__participation-next,
.character-home__participation-reward {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.character-home__participation-context {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  min-width: 0;
}

.character-home__participation-context > div,
.character-home__participation-receipt,
.character-home__participation-recognition {
  background: color-mix(in srgb, var(--surface-strong) 90%, transparent);
  border: 1px solid var(--line);
  min-width: 0;
  padding: 0.85rem;
}

.character-home__participation-context dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.character-home__participation-context dd {
  margin: 0.25rem 0 0;
  overflow-wrap: anywhere;
}

.character-home__participation-recognition {
  border-left: 0.25rem solid var(--accent-2);
}

.character-home__participation-recognition.is-degraded {
  border-left-color: var(--danger, #d46d6d);
}

.character-home__action,
.character-home__quest-row,
.character-home__notice,
.character-home__recognition-item,
.character-home__entity {
  align-items: center;
  background: color-mix(in srgb, var(--surface-strong) 88%, var(--accent) 12%);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.85rem;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 0.85rem;
}

.character-home__action {
  grid-template-columns: 2rem minmax(0, 1fr) auto;
}

.character-home__action > span {
  align-items: center;
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--accent-2) 18%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent-2) 55%, var(--line));
  border-radius: 50%;
  display: flex;
  justify-content: center;
}

.character-home__action p,
.character-home__quest-row span,
.character-home__quest-row small,
.character-home__recognition-item small,
.character-home__entity span {
  color: var(--muted);
  display: block;
  margin-top: 0.25rem;
}

.character-home__summary-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.character-home__summary .button {
  justify-self: start;
}

.character-home [data-card-spread-root] {
  max-width: 100%;
}

@media (max-width: 900px) {
  .character-home__summary-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 620px) {
  .character-home__identity,
  .character-home__action,
  .character-home__quest-row,
  .character-home__notice,
  .character-home__recognition-item,
  .character-home__entity {
    grid-template-columns: minmax(0, 1fr);
  }

  .character-home__avatar {
    max-width: 9rem;
  }

  .character-home :is(.character-home__participation, .character-home__next, .character-home__quest, .character-home__return, .character-home__recognition, .character-home__entities) > header,
  .character-home__participation-card > header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .character-home__participation-context {
    grid-template-columns: minmax(0, 1fr);
  }

  .character-home .page-actions,
  .character-home .page-actions > :is(a, button),
  .character-home__action > .button,
  .character-home__notice > .button {
    width: 100%;
  }
}

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

.home-dashboard-grid--summary {
  grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
}

.home-status-card,
.home-quest-panel,
.home-offering-panel,
.home-activity-panel {
  display: grid;
  gap: 0.85rem;
}

.home-status-card h2 {
  font-size: 1.45rem;
  margin: 0;
}

.home-mvp-readout {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
}

.home-mvp-icon {
  align-items: center;
  aspect-ratio: 1;
  background: color-mix(in srgb, var(--accent-2) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent-2) 42%, var(--line));
  display: inline-flex;
  font-size: 1.65rem;
  justify-content: center;
  line-height: 1;
  width: 3rem;
}

.home-coin-pocket,
.home-quest-bundle,
.home-bazaar-tray,
.home-quest-card__scroll-mark,
.home-offering-card__market-mark,
.wallet-card-rpg-mark,
.wallet-row-rpg-mark,
.wallet-loop-card__icon,
.rpg-icon {
  display: none;
}

body.shell-profile-rpg .home-mvp-readout--coin .home-mvp-icon,
body.shell-profile-rpg .home-mvp-readout--quests .home-mvp-icon {
  display: none;
}

body.shell-profile-rpg .home-coin-pocket,
body.shell-profile-rpg .home-quest-bundle,
body.shell-profile-rpg .home-bazaar-tray {
  display: grid;
}

body.shell-profile-rpg .home-quest-card__scroll-mark,
body.shell-profile-rpg .home-offering-card__market-mark,
body.shell-profile-rpg .wallet-card-rpg-mark,
body.shell-profile-rpg .wallet-row-rpg-mark,
body.shell-profile-rpg .wallet-loop-card__icon,
body.shell-profile-rpg .rpg-icon {
  display: block;
}

/* Coin shape source: /corsair.city/assets/js/bones-table.js cofferBreakdown/coinNode
   and /corsair.city/assets/css/site.css coffer coin styles. */
.home-coin-pocket {
  gap: 0.35rem;
  justify-items: center;
  min-width: 5.7rem;
}

.home-coin-pocket__circle,
.wallet-coin-hoard__circle {
  aspect-ratio: 1;
  background:
    radial-gradient(circle at 48% 44%, rgba(240, 196, 118, 0.14), transparent 48%),
    radial-gradient(circle at 50% 54%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.72) 73%),
    repeating-conic-gradient(from 18deg, rgba(240, 196, 118, 0.1) 0 7deg, transparent 7deg 18deg);
  border: 1px solid rgba(240, 196, 118, 0.34);
  border-radius: 50%;
  box-shadow:
    inset 0 0 1.8rem rgba(0, 0, 0, 0.72),
    inset 0 0 0 0.35rem rgba(0, 0, 0, 0.18),
    0 0.65rem 1.5rem rgba(0, 0, 0, 0.34);
  overflow: hidden;
  position: relative;
  width: clamp(4.4rem, 8vw, 5.8rem);
}

.wallet-coin-hoard__circle {
  width: clamp(10.5rem, 30vw, 17rem);
}

.home-coin-pocket .coffer-coin,
.wallet-coin-hoard .coffer-coin,
.home-offering-card__market-mark .coffer-coin {
  box-shadow: 0 0.18rem 0.42rem rgba(0, 0, 0, 0.46), inset 0 0.08rem 0.18rem rgba(255, 255, 255, 0.22);
  display: grid;
  place-items: center;
}

.home-coin-pocket .coffer-coin,
.wallet-coin-hoard .coffer-coin {
  position: absolute;
  transform: translate(-50%, -50%) rotate(var(--coin-rot, 0deg));
  transform-origin: center;
}

.home-offering-card__market-mark .coffer-coin {
  position: relative;
  transform: rotate(-12deg);
}

.home-coin-pocket .coin-copper,
.wallet-coin-hoard .coin-copper,
.home-offering-card__market-mark .coin-copper {
  background: linear-gradient(145deg, #d18445, #7c3f1e 72%);
  border: 1px solid rgba(255, 203, 146, 0.22);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  height: 0.7rem;
  width: 0.78rem;
}

.home-coin-pocket .coin-silver,
.wallet-coin-hoard .coin-silver,
.home-offering-card__market-mark .coin-silver {
  background: linear-gradient(145deg, #d5d1c3, #777268 70%, #3a3835);
  border: 1px solid rgba(255, 255, 255, 0.26);
  clip-path: polygon(18% 0, 82% 0, 100% 18%, 100% 82%, 82% 100%, 18% 100%, 0 82%, 0 18%);
  height: 0.88rem;
  width: 0.88rem;
}

.home-coin-pocket .coin-gold,
.wallet-coin-hoard .coin-gold,
.home-offering-card__market-mark .coin-gold {
  background:
    radial-gradient(circle at 34% 28%, rgba(255, 246, 193, 0.78), transparent 28%),
    linear-gradient(145deg, #f0c46f, #a96b27 74%);
  border: 1px solid rgba(255, 226, 150, 0.48);
  border-radius: 50%;
  height: 1.2rem;
  width: 1.2rem;
}

.home-coin-pocket .coin-gold .coin-dragon,
.wallet-coin-hoard .coin-gold .coin-dragon,
.home-offering-card__market-mark .coin-gold .coin-dragon {
  border-left: 2px solid rgba(74, 39, 16, 0.58);
  border-radius: 65% 35% 55% 45%;
  border-top: 2px solid rgba(74, 39, 16, 0.72);
  height: 0.48rem;
  position: relative;
  transform: rotate(-22deg);
  width: 0.58rem;
}

.home-coin-pocket .coin-gold .coin-dragon::after,
.wallet-coin-hoard .coin-gold .coin-dragon::after,
.home-offering-card__market-mark .coin-gold .coin-dragon::after {
  border-radius: 50% 50% 50% 0;
  border-top: 2px solid rgba(74, 39, 16, 0.72);
  content: "";
  height: 0.28rem;
  position: absolute;
  right: -0.16rem;
  top: -0.16rem;
  transform: rotate(18deg);
  width: 0.28rem;
}

.home-coin-pocket .coin-platinum,
.wallet-coin-hoard .coin-platinum {
  background:
    radial-gradient(circle at 30% 24%, rgba(255, 255, 255, 0.86), transparent 22%),
    linear-gradient(145deg, #fff9df, #b7b1a4 54%, #67635d);
  border: 0;
  border-radius: 0;
  clip-path: polygon(44% 0, 63% 5%, 50% 13%, 39% 25%, 32% 40%, 33% 57%, 42% 73%, 57% 87%, 76% 95%, 60% 100%, 40% 97%, 22% 86%, 10% 68%, 5% 49%, 9% 30%, 22% 13%);
  height: 1.55rem;
  width: 1.55rem;
}

.wallet-coin-hoard .coffer-coin {
  scale: 1.28;
}

.coin-empty-mark {
  color: rgba(242, 231, 211, 0.42);
  font-family: var(--mono-font);
  font-size: 1.2rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.home-coin-pocket__legend,
.wallet-coin-hoard__legend,
.coin-denom-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
  justify-content: center;
  max-width: 6.8rem;
}

.wallet-coin-hoard__legend {
  max-width: 14rem;
}

.coin-denom {
  background: rgba(0, 0, 0, 0.32);
  border: 1px solid var(--line);
  color: var(--muted);
  font-family: var(--mono-font);
  font-size: 0.62rem;
  line-height: 1;
  padding: 0.18rem 0.24rem;
}

.coin-denom b {
  color: var(--text);
  margin-right: 0.08rem;
}

.home-quest-bundle {
  min-width: 5.4rem;
  place-items: center;
}

.home-quest-bundle__wrap {
  aspect-ratio: 1.18;
  filter: drop-shadow(0 0.55rem 0.65rem rgba(0, 0, 0, 0.34));
  position: relative;
  width: 5.4rem;
}

.home-scroll {
  background:
    linear-gradient(90deg, rgba(107, 63, 32, 0.5), transparent 14% 86%, rgba(107, 63, 32, 0.52)),
    repeating-linear-gradient(0deg, rgba(92, 53, 25, 0.16) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, #ead3a1, #b98348 72%);
  border: 1px solid rgba(255, 223, 157, 0.48);
  border-radius: 999px;
  box-shadow: inset 0 0.15rem 0.25rem rgba(255, 255, 255, 0.18), 0 0.35rem 0.75rem rgba(0, 0, 0, 0.28);
  display: block;
  height: 0.82rem;
  position: absolute;
  width: 3.6rem;
}

.home-scroll::before,
.home-scroll::after {
  background: linear-gradient(145deg, #f1dba9, #9a6235);
  border: 1px solid rgba(99, 55, 24, 0.42);
  border-radius: 50%;
  content: "";
  height: 1.05rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.62rem;
}

.home-scroll::before {
  left: -0.38rem;
}

.home-scroll::after {
  right: -0.38rem;
}

.home-scroll i {
  background: color-mix(in srgb, var(--accent) 52%, #6b3f20);
  border-radius: 999px;
  display: block;
  height: 0.12rem;
  left: 18%;
  opacity: 0.55;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 64%;
}

.home-quest-bundle .home-scroll {
  left: 50%;
  top: 50%;
}

.home-quest-bundle .home-scroll--0 { transform: translate(-52%, -82%) rotate(-13deg); }
.home-quest-bundle .home-scroll--1 { transform: translate(-44%, -34%) rotate(8deg); }
.home-quest-bundle .home-scroll--2 { transform: translate(-57%, 12%) rotate(-5deg); }
.home-quest-bundle .home-scroll--3 { transform: translate(-39%, 54%) rotate(12deg); }

.home-quest-card,
.home-offering-card {
  position: relative;
}

.home-quest-card__scroll-mark {
  height: 1.8rem;
  pointer-events: none;
  position: absolute;
  right: 0.9rem;
  top: 0.8rem;
  width: 3.6rem;
}

.home-quest-card__scroll-mark .home-scroll {
  opacity: 0.82;
  transform: rotate(10deg) scale(0.74);
  transform-origin: right top;
}

.home-bazaar-tray {
  min-height: 4.2rem;
}

.home-bazaar-tray__cloth {
  align-items: end;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.3), transparent 24% 76%, rgba(0, 0, 0, 0.3)),
    repeating-linear-gradient(90deg, rgba(217, 111, 95, 0.26) 0 0.75rem, rgba(240, 196, 118, 0.18) 0.75rem 1.5rem),
    rgba(0, 0, 0, 0.28);
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--line));
  border-radius: 6px;
  display: flex;
  gap: 0.45rem;
  min-height: 4.2rem;
  overflow: hidden;
  padding: 0.65rem 0.75rem;
}

.home-bazaar-slip {
  align-items: end;
  background:
    linear-gradient(145deg, rgba(255, 246, 216, 0.96), rgba(179, 129, 70, 0.9)),
    repeating-linear-gradient(0deg, rgba(92, 53, 25, 0.18) 0 1px, transparent 1px 5px);
  border: 1px solid rgba(255, 223, 157, 0.48);
  box-shadow: 0 0.45rem 0.75rem rgba(0, 0, 0, 0.28);
  color: #442713;
  display: flex;
  height: 2.6rem;
  justify-content: center;
  min-width: 2.15rem;
  padding: 0.25rem;
  transform: rotate(var(--slip-rot, -4deg));
}

.home-bazaar-slip i {
  display: block;
  font-family: var(--mono-font);
  font-size: 0.58rem;
  font-style: normal;
  font-weight: 900;
  max-width: 2.6rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-bazaar-slip--1 { --slip-rot: 5deg; }
.home-bazaar-slip--2 { --slip-rot: -8deg; }
.home-bazaar-slip--3 { --slip-rot: 7deg; }
.home-bazaar-slip--4 { --slip-rot: -2deg; }

.home-bazaar-empty {
  align-self: center;
  color: rgba(255, 246, 216, 0.68);
  font-family: var(--display-font);
}

.home-offering-card__market-mark {
  align-items: end;
  display: flex;
  gap: 0.2rem;
  pointer-events: none;
  position: absolute;
  right: 0.85rem;
  top: 0.72rem;
}

.home-offering-card__market-mark .home-bazaar-slip {
  height: 1.95rem;
  min-width: 1.7rem;
  transform: rotate(-7deg) scale(0.8);
  transform-origin: right top;
}

.home-offering-card__market-mark .coffer-coin {
  margin-bottom: 0.16rem;
  margin-left: -0.55rem;
}

.rpg-icon {
  aspect-ratio: 1;
  color: var(--rpg-gold-soft, #e5bc5f);
  filter: drop-shadow(0 0.22rem 0.32rem rgba(0, 0, 0, 0.28));
  position: relative;
  width: 2.4rem;
}

.rpg-icon::before,
.rpg-icon::after,
.rpg-icon i,
.rpg-icon i::before,
.rpg-icon i::after {
  box-sizing: border-box;
  content: "";
  position: absolute;
}

.rpg-icon--coin::before {
  background:
    radial-gradient(circle at 34% 28%, rgba(255, 246, 193, 0.78), transparent 28%),
    linear-gradient(145deg, #f0c46f, #a96b27 74%);
  border: 1px solid rgba(255, 226, 150, 0.58);
  border-radius: 50%;
  inset: 18%;
}

.rpg-icon--coin i {
  border-left: 2px solid rgba(74, 39, 16, 0.58);
  border-radius: 65% 35% 55% 45%;
  border-top: 2px solid rgba(74, 39, 16, 0.72);
  height: 0.58rem;
  left: 50%;
  top: 50%;
  transform: translate(-46%, -46%) rotate(-22deg);
  width: 0.68rem;
}

.rpg-icon--scroll::before,
.rpg-icon--contract::before {
  background:
    linear-gradient(90deg, rgba(107, 63, 32, 0.5), transparent 14% 86%, rgba(107, 63, 32, 0.52)),
    repeating-linear-gradient(0deg, rgba(92, 53, 25, 0.16) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, #ead3a1, #b98348 72%);
  border: 1px solid rgba(255, 223, 157, 0.52);
  border-radius: 999px;
  height: 0.72rem;
  left: 8%;
  top: 38%;
  transform: rotate(-12deg);
  width: 84%;
}

.rpg-icon--scroll::after,
.rpg-icon--contract::after {
  background: color-mix(in srgb, var(--rpg-purple, #8e63d7) 56%, #6b3f20);
  border-radius: 999px;
  height: 0.12rem;
  left: 27%;
  top: 51%;
  transform: rotate(-12deg);
  width: 46%;
}

.rpg-icon--contract::before {
  border-radius: 0.16rem;
  height: 1.55rem;
  left: 24%;
  top: 18%;
  transform: rotate(-7deg);
  width: 52%;
}

.rpg-icon--contract::after {
  box-shadow: 0 0.34rem 0 rgba(107, 63, 32, 0.35), 0 0.68rem 0 rgba(107, 63, 32, 0.26);
  left: 34%;
  top: 36%;
  transform: rotate(-7deg);
  width: 32%;
}

.rpg-icon--bazaar::before {
  background:
    repeating-linear-gradient(90deg, #d96f5f 0 0.28rem, #e5bc5f 0.28rem 0.56rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent);
  border: 0.08rem solid currentColor;
  border-bottom: 0;
  border-radius: 0.5rem 0.5rem 0.12rem 0.12rem;
  height: 0.82rem;
  left: 17%;
  top: 22%;
  width: 66%;
}

.rpg-icon--bazaar::after {
  border: 0.08rem solid currentColor;
  border-top-width: 0.18rem;
  border-radius: 0.1rem;
  height: 0.9rem;
  left: 25%;
  top: 51%;
  width: 50%;
}

.rpg-icon--journal::before {
  background:
    linear-gradient(90deg, transparent 0.34rem, rgba(82, 48, 23, 0.48) 0.34rem 0.42rem, transparent 0.42rem),
    repeating-linear-gradient(180deg, transparent 0 0.34rem, rgba(82, 48, 23, 0.4) 0.34rem 0.4rem),
    linear-gradient(145deg, #ead3a1, #b98348);
  border: 1px solid rgba(255, 223, 157, 0.52);
  border-radius: 0.1rem 0.42rem 0.14rem 0.1rem;
  height: 1.6rem;
  left: 24%;
  top: 17%;
  transform: rotate(-5deg);
  width: 1.25rem;
}

.rpg-icon--cards::before,
.rpg-icon--cards::after,
.rpg-icon--cards i {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(197, 167, 255, 0.14));
  border: 0.08rem solid currentColor;
  border-radius: 0.14rem;
  height: 1.48rem;
  left: 38%;
  top: 20%;
  transform-origin: 50% 90%;
  width: 0.95rem;
}

.rpg-icon--cards::before {
  opacity: 0.7;
  transform: rotate(-16deg);
}

.rpg-icon--cards::after {
  opacity: 0.85;
  transform: rotate(12deg);
}

.rpg-icon--cards i {
  transform: rotate(0deg);
}

.rpg-icon--signal::before {
  background: currentColor;
  border-radius: 50%;
  box-shadow: 0 0 1rem rgba(229, 188, 95, 0.42);
  height: 0.45rem;
  left: 50%;
  top: 46%;
  transform: translate(-50%, -50%);
  width: 0.45rem;
}

.rpg-icon--signal::after,
.rpg-icon--rain::after {
  border: 0.12rem solid currentColor;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-radius: 50%;
  height: 1.65rem;
  left: 50%;
  opacity: 0.72;
  top: 46%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 1.65rem;
}

.rpg-icon--lock::before {
  border: 0.14rem solid currentColor;
  border-bottom: 0;
  border-radius: 0.75rem 0.75rem 0 0;
  height: 0.9rem;
  left: 32%;
  top: 16%;
  width: 36%;
}

.rpg-icon--lock::after {
  background: linear-gradient(145deg, #ead3a1, #a96b27);
  border: 1px solid rgba(255, 226, 150, 0.58);
  border-radius: 0.15rem;
  height: 1rem;
  left: 25%;
  top: 44%;
  width: 50%;
}

.rpg-icon--rain::before {
  background: linear-gradient(145deg, #8fa7e8, #45c89f);
  border-radius: 50% 50% 50% 0;
  height: 1.1rem;
  left: 34%;
  top: 24%;
  transform: rotate(-45deg);
  width: 1.1rem;
}

.rpg-icon--favor::before {
  background:
    radial-gradient(circle at 50% 50%, rgba(18, 7, 25, 0.7) 0 22%, transparent 24%),
    linear-gradient(145deg, #f0c46f, #8e63d7);
  clip-path: polygon(50% 0, 62% 34%, 100% 36%, 69% 58%, 80% 96%, 50% 73%, 20% 96%, 31% 58%, 0 36%, 38% 34%);
  inset: 18%;
}

.home-quest-panel > header,
.home-offering-panel > header,
.home-activity-panel > header,
.home-quest-card header {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.home-quest-list,
.home-offering-list,
.home-notification-list {
  display: grid;
  gap: 0.75rem;
}

.home-active-quest-preview__body {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
}

.home-active-quest-preview__body h2 {
  color: var(--accent);
  font-size: 1.25rem;
  margin: 0;
  overflow-wrap: anywhere;
}

.home-active-quest-preview__facts {
  grid-template-columns: minmax(0, 1fr);
}

.home-notification-group {
  display: grid;
  gap: 0.6rem;
}

.home-notification-group h3 {
  color: var(--accent-2);
  font-size: 0.78rem;
  letter-spacing: 0;
  margin: 0;
  text-transform: uppercase;
}

.home-quest-card,
.home-offering-card,
.home-notification-item {
  background:
    linear-gradient(135deg, rgba(69, 200, 159, 0.08), transparent 36%),
    var(--surface-strong);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.65rem;
  min-width: 0;
  padding: 0.8rem;
}

.home-quest-card h3 {
  margin: 0;
}

.home-offering-card h3 {
  margin: 0;
  overflow-wrap: anywhere;
}

.home-notification-item {
  align-items: start;
  grid-template-columns: auto minmax(0, 1fr) auto;
  text-align: left;
}

.home-notification-item[data-shell-notification-open] {
  cursor: pointer;
}

.home-notification-item.is-actionable {
  border-color: color-mix(in srgb, var(--accent-2) 48%, var(--line));
}

.home-notification-item.is-read {
  opacity: 0.78;
}

.home-notification-item.is-highlighted {
  border-color: var(--accent-2);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent-2) 24%, transparent);
}

.home-notification-item strong,
.home-notification-item small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.home-notification-item small {
  color: var(--muted);
  margin-top: 0.2rem;
}

.notification-target-label {
  color: var(--accent-2) !important;
  font-weight: 850;
  text-transform: uppercase;
}

.notification-detail-list {
  display: grid;
  gap: 0.25rem;
  margin: 0.45rem 0 0;
}

.notification-detail-list div {
  display: grid;
  gap: 0.35rem;
  grid-template-columns: minmax(5.5rem, auto) minmax(0, 1fr);
}

.notification-detail-list dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.notification-detail-list dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-toast-host {
  bottom: calc(var(--shell-bottom-height, var(--bottom-bar-height, 4rem)) + 0.28rem + env(safe-area-inset-bottom, 0px));
  display: grid;
  gap: 0.35rem;
  left: 0.45rem;
  max-width: none;
  position: fixed;
  right: 0.45rem;
  width: auto;
  z-index: 80;
}

body.shell-notification-mode-console .shell-toast-host {
  display: none;
}

.shell-toast {
  align-items: start;
  animation: shell-toast-in 180ms ease-out;
  background: var(--surface-strong);
  border: 1px solid color-mix(in srgb, var(--accent-2) 48%, var(--line));
  border-left: 0.35rem solid var(--accent-2);
  box-shadow: var(--shadow);
  color: var(--text);
  display: grid;
  gap: 0.25rem 0.55rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 2.9rem;
  padding: 0.55rem 0.7rem;
  text-align: left;
  touch-action: pan-y;
  transform: translateX(var(--shell-toast-swipe-x, 0));
}

.shell-toast strong,
.shell-toast small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-toast small {
  color: var(--muted);
  grid-column: 2;
}

.shell-toast.is-hiding {
  opacity: 0;
  transform: translate(var(--shell-toast-dismiss-x, var(--shell-toast-swipe-x, 0)), 0.4rem);
  transition: opacity 220ms ease, transform 220ms ease;
}

.shell-toast.is-swiping {
  transition: none;
}

.shell-toast.is-swiped-away {
  pointer-events: none;
}

@keyframes shell-toast-in {
  from {
    opacity: 0;
    transform: translateY(0.35rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.shell-list-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: flex-end;
  min-width: 0;
}

.shell-list-action {
  border-color: var(--line-soft);
  font-size: 0.76rem;
  font-weight: 850;
  min-height: 2rem;
  padding: 0.34rem 0.5rem;
  text-transform: uppercase;
}

.shell-list-action--primary {
  border-color: color-mix(in srgb, var(--accent-2) 58%, var(--line));
  color: var(--accent-2);
}

.shell-list-action--danger {
  border-color: color-mix(in srgb, var(--danger) 64%, var(--line));
  color: var(--danger);
}

.shell-list-action--quiet {
  color: var(--muted);
}

.state-box--error {
  border-color: var(--danger);
}

.state-box--locked {
  border-color: var(--accent);
}

.contract-list {
  display: grid;
  gap: 0.55rem;
  margin: 0;
}

.contract-list div {
  display: grid;
  gap: 0.1rem;
}

.contract-list dt {
  font-size: 0.72rem;
  text-transform: uppercase;
}

.contract-list dd {
  margin: 0;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tag-list li {
  border: 1px solid var(--line);
  padding: 0.35rem 0.5rem;
}

.compendium-surface {
  display: grid;
  gap: 1rem;
  grid-template-rows: auto auto minmax(0, 1fr);
  min-height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height) - 2rem);
}

.compendium-control-deck {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent 68%),
    color-mix(in srgb, var(--glass-strong) 92%, transparent);
  border: 1px solid var(--line-soft);
  box-shadow: 0 0.45rem 1rem rgba(0, 0, 0, 0.2);
  display: grid;
  gap: 0.35rem;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 0.35rem;
  position: sticky;
  top: var(--route-sticky-top, 3.05rem);
  z-index: 8;
}

.compendium-control-group {
  border: 1px solid color-mix(in srgb, var(--line-soft) 80%, transparent);
  display: grid;
  gap: 0.55rem;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 0;
}

.compendium-control-group summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 0.55rem;
  grid-template-columns: auto minmax(0, 1fr);
  list-style: none;
  min-height: 2rem;
  padding: 0.3rem 0.5rem;
}

.compendium-control-group summary::-webkit-details-marker {
  display: none;
}

.compendium-control-group summary::before {
  color: var(--accent-2);
  content: ">";
  font-family: var(--mono-font);
  font-size: 0.86rem;
  line-height: 1;
  transform-origin: center;
  transition: transform 140ms ease;
}

.compendium-control-group[open] summary::before {
  transform: rotate(90deg);
}

.compendium-control-group summary span,
.compendium-control-group summary small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.compendium-control-group summary span {
  color: var(--text);
  font-family: var(--display-font);
  letter-spacing: 0;
}

.compendium-control-group summary small {
  display: none;
}

.compendium-control-group[open] {
  padding: 0 0.55rem 0.55rem;
}

.compendium-control-group[open] > :not(summary) {
  margin-inline: 0;
  max-width: 100%;
  min-width: 0;
}

.compendium-page-tabs {
  justify-content: start;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.compendium-tabs {
  display: flex;
  gap: 0.4rem;
  max-width: 100%;
  min-width: 0;
  overscroll-behavior-inline: contain;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 0.18rem;
  scrollbar-width: thin;
  width: 100%;
}

.compendium-tabs[hidden],
.compendium-discover-grid[hidden] {
  display: none !important;
}

.compendium-tabs button {
  align-items: center;
  background: rgba(0, 0, 0, 0.38);
  border: 1px solid var(--line-soft);
  color: var(--muted);
  display: inline-flex;
  flex: 0 0 auto;
  gap: 0.45rem;
  min-height: 2.35rem;
  padding: 0.42rem 0.68rem;
  white-space: nowrap;
}

.compendium-tabs button:hover,
.compendium-tabs button.is-active {
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  border-color: color-mix(in srgb, var(--accent) 62%, var(--line));
  color: var(--text);
}

.compendium-tabs strong {
  color: var(--accent-2);
  font-size: 0.72rem;
}

.compendium-surface--v4 {
  grid-template-rows: auto auto minmax(0, 1fr);
  min-height: 0;
}

.compendium-v4-console {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 68%),
    color-mix(in srgb, var(--glass-strong) 88%, transparent);
  border: 1px solid var(--line-soft);
  box-shadow: 0 0.6rem 1.25rem rgba(0, 0, 0, 0.24);
  display: grid;
  gap: 0.7rem;
  min-width: 0;
  padding: 0.7rem;
  position: sticky;
  top: var(--route-sticky-top, 3.05rem);
  z-index: 8;
}

.shell-card-browser-control-drawer {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
  padding: 0;
  width: 100%;
}

.shell-card-browser-control-drawer > summary {
  align-items: center;
  box-sizing: border-box;
  cursor: pointer;
  display: grid;
  gap: 0.42rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  list-style: none;
  min-height: 2.35rem;
  min-width: 0;
  padding: 0.42rem 0.62rem;
  width: 100%;
}

.shell-card-browser-control-drawer > summary::-webkit-details-marker {
  display: none;
}

.shell-card-browser-control-drawer > summary::before {
  color: var(--accent-2);
  content: ">";
  font-family: var(--mono-font);
  line-height: 1;
  transition: transform 140ms ease;
}

.shell-card-browser-control-drawer[open] > summary::before {
  transform: rotate(90deg);
}

.shell-card-browser-control-drawer > summary span,
.shell-card-browser-control-drawer > summary small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-card-browser-control-drawer > summary span {
  color: var(--text);
  font-family: var(--display-font);
  letter-spacing: 0;
}

.shell-card-browser-control-drawer > summary small {
  color: var(--muted);
  font-size: 0.76rem;
}

.shell-card-browser-control-drawer[open] {
  padding: 0 0.7rem 0.7rem;
}

.shell-card-browser-control-drawer[open] > summary {
  margin-inline: -0.7rem;
}

.shell-card-browser-control-grid {
  box-sizing: border-box;
  contain: inline-size;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(8rem, 12rem) minmax(12rem, 1fr) minmax(10rem, 16rem) auto;
  inline-size: 100%;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.shell-card-browser-control-grid > * {
  min-width: 0;
}

.shell-card-browser-control-grid > label,
.shell-card-browser-control-grid .compendium-toolbar label {
  display: grid;
  gap: 0.28rem;
  min-width: 0;
}

.shell-card-browser-control-grid > label > span,
.shell-card-browser-control-grid .compendium-toolbar label span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.shell-card-browser-control-drawer :is(.compendium-toolbar, .quest-filter-toolbar, .quest-search-toolbar) {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  position: static;
}

.shell-card-browser-control-drawer :is(input, select, button) {
  max-width: 100%;
  min-width: 0;
}

.shell-card-browser-control-drawer :is(input, select) {
  background: rgba(0, 0, 0, 0.42);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.5rem;
  padding: 0.55rem 0.7rem;
  width: 100%;
}

.shell-card-browser-control-drawer .card-browser-mode {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: min(16rem, 100%);
}

.shell-card-browser-control-drawer .card-browser-mode button {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.shell-card-browser-control-drawer .journal-tabs,
.shell-card-browser-control-drawer .compendium-tabs {
  box-sizing: border-box;
  contain: inline-size;
  inline-size: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  width: 100%;
}

.shell-card-browser-control-drawer .compendium-tabs button,
.shell-card-browser-control-drawer .journal-tabs button {
  max-width: min(12rem, 72vw);
}

.shell-card-browser-control-drawer .vendor-quest-controls {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(8rem, 12rem) minmax(12rem, 1fr) minmax(10rem, 16rem) auto;
  min-width: 0;
  width: 100%;
}

.compendium-v4-tools {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(8rem, 12rem) minmax(14rem, 1fr) minmax(8rem, 12rem);
  min-width: 0;
}

.compendium-v4-tools label {
  display: grid;
  gap: 0.28rem;
  min-width: 0;
}

.compendium-v4-tools label span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.card-browser-mode {
  align-items: center;
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid var(--line-soft);
  display: inline-flex;
  gap: 0.25rem;
  min-height: 2.45rem;
  padding: 0.25rem;
}

.card-browser-mode button {
  background: transparent;
  border: 1px solid transparent;
  color: var(--muted);
  min-height: 1.9rem;
  padding: 0.35rem 0.62rem;
}

.card-browser-mode button:hover,
.card-browser-mode button.is-active {
  background: color-mix(in srgb, var(--accent) 16%, transparent);
  border-color: color-mix(in srgb, var(--accent) 56%, var(--line-soft));
  color: var(--text);
}

.compendium-v4-list {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.shell-card-browser {
  display: grid;
  gap: 1rem;
  min-width: 0;
  width: 100%;
}

.shell-card-browser-group-tools {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  min-width: 0;
}

.shell-card-browser-group-toggle {
  background: color-mix(in srgb, var(--surface-strong) 74%, transparent);
  border-color: var(--line-soft);
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1;
  min-height: 1.85rem;
  padding: 0.34rem 0.52rem;
  text-transform: uppercase;
}

.shell-card-browser-group,
.compendium-group {
  background: color-mix(in srgb, var(--panel) 82%, transparent);
  border: 1px solid var(--line-soft);
  justify-self: stretch;
  min-width: 0;
  width: 100%;
}

.shell-card-browser-group summary,
.compendium-group summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 0.55rem;
  justify-content: space-between;
  list-style: none;
  min-height: 2.8rem;
  padding: 0.65rem 0.8rem;
}

.shell-card-browser-group summary::-webkit-details-marker,
.compendium-group summary::-webkit-details-marker {
  display: none;
}

.shell-card-browser-group summary span,
.compendium-group summary span {
  color: var(--muted);
  font-size: 0.78rem;
}

.shell-card-browser-items,
.compendium-items {
  display: grid;
  gap: 0.55rem;
  justify-items: stretch;
  min-width: 0;
  padding: 0 0.65rem 0.7rem;
  width: 100%;
}

.shell-card-browser-row-shell,
.compendium-row-shell {
  align-items: stretch;
  background:
    radial-gradient(circle at 86% 16%, color-mix(in srgb, var(--card-accent, var(--accent)) 18%, transparent), transparent 19rem),
    linear-gradient(90deg, rgba(8, 5, 15, 0.96) 0%, rgba(8, 5, 15, 0.82) 48%, rgba(8, 5, 15, 0.58) 100%),
    linear-gradient(0deg, rgba(10, 5, 18, 0.62), rgba(10, 5, 18, 0.62)),
    var(--card-row-art),
    color-mix(in srgb, var(--surface) 92%, transparent);
  background-position: center;
  background-size: cover;
  border: 1px solid var(--line-soft);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.045),
    inset 0 0 2.4rem rgba(0, 0, 0, 0.36);
  display: grid;
  gap: 0;
  grid-template-columns: 0.42rem minmax(9.25rem, 13.2rem) minmax(0, 1fr);
  min-height: 14.3rem;
  min-width: 0;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.shell-card-browser-row-shell::before,
.compendium-row-shell::before {
  background: linear-gradient(180deg, color-mix(in srgb, var(--card-accent, var(--accent)) 94%, #ffffff 6%), color-mix(in srgb, var(--card-accent, var(--accent)) 58%, #000000 42%));
  content: "";
  grid-column: 1;
  grid-row: 1 / -1;
}

.shell-card-browser-row-shell::after,
.compendium-row-shell::after {
  background:
    linear-gradient(90deg, transparent, color-mix(in srgb, var(--card-accent, var(--accent)) 48%, transparent), transparent),
    radial-gradient(circle, color-mix(in srgb, var(--card-accent, var(--accent)) 42%, transparent) 0 1px, transparent 2px);
  background-size: 100% 1px, 0.55rem 0.55rem;
  content: "";
  height: 2.2rem;
  opacity: 0.5;
  pointer-events: none;
  position: absolute;
  right: 0.85rem;
  top: 0.85rem;
  width: min(11rem, 32%);
  z-index: 1;
}

.shell-card-browser-row-shell--dex-frame {
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 15.7rem;
}

.shell-card-browser-row-shell--dex-frame::before {
  grid-row: 1 / -1;
}

.shell-card-browser-row-shell--dex-frame::after {
  top: 3.05rem;
}

.shell-card-browser-row-title {
  align-items: center;
  background:
    linear-gradient(90deg, rgba(255, 247, 219, 0.055), transparent 76%);
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 34%, var(--line-soft));
  color: var(--text);
  display: flex;
  gap: 0.75rem;
  grid-column: 2 / 4;
  grid-row: 1;
  justify-content: center;
  min-height: 2.55rem;
  min-width: 0;
  padding: 0.58rem 0.75rem 0.52rem;
  position: relative;
  text-align: left;
  width: 100%;
  z-index: 3;
}

.shell-card-browser-row-title strong {
  color: var(--text);
  display: block;
  font-family: var(--display-font);
  font-size: clamp(1.08rem, 1.5vw, 1.42rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.02;
  min-width: 0;
  overflow-wrap: anywhere;
  text-align: center;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.68);
}

.shell-card-browser-row-shell--dex-frame .shell-card-browser-row-art {
  grid-row: 2;
  min-height: 13.15rem;
}

.shell-card-browser-row-signal-rail {
  align-items: center;
  background:
    linear-gradient(180deg, rgba(8, 5, 15, 0.88), rgba(8, 5, 15, 0.52));
  border-bottom: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 44%, rgba(255, 255, 255, 0.14));
  display: flex;
  inset: 0 0 auto;
  justify-content: center;
  min-height: 1.62rem;
  padding: 0.18rem 0.35rem;
  position: absolute;
  z-index: 4;
}

.shell-card-browser-row-signal-rail .card-signal-cluster {
  height: auto;
  margin: 0;
  max-width: 100%;
}

.shell-card-browser-row-signal-rail .card-signal-dot {
  flex-basis: 14px;
  height: 14px;
  width: 14px;
}

.shell-card-browser-row-signal-rail .card-signal-dot .nysa-glyph {
  height: 8px;
  width: 8px;
}

.shell-card-browser-row,
.compendium-row {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--text);
  display: grid;
  gap: clamp(0.85rem, 2vw, 1.3rem);
  grid-column: 3;
  grid-template-columns: minmax(0, 1fr) minmax(5.2rem, max-content);
  min-height: 14.3rem;
  padding: clamp(1rem, 2.2vw, 1.45rem);
  position: relative;
  text-align: left;
  width: 100%;
  z-index: 2;
}

.shell-card-browser-row--dex-frame {
  align-content: start;
  align-items: start;
  grid-row: 2;
  grid-template-columns: minmax(0, 1fr);
  min-height: 13.15rem;
  padding: 0.78rem 0.78rem 3rem;
}

.shell-card-browser-row-shell.has-row-actions .shell-card-browser-row,
.compendium-row-shell.has-row-actions .compendium-row {
  padding-bottom: 2.8rem;
}

.shell-card-browser-row-shell--dex-frame.has-row-actions .shell-card-browser-row--dex-frame {
  padding-bottom: 3rem;
}

.shell-card-browser-row strong,
.shell-card-browser-row small,
.compendium-row strong,
.compendium-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-card-browser-row small,
.compendium-row small {
  color: color-mix(in srgb, var(--muted) 78%, #ffffff 22%);
  margin-top: 0.16rem;
}

.shell-card-browser-row-copy {
  display: grid;
  gap: 0.44rem;
  min-width: 0;
}

.shell-card-browser-row-copy > strong {
  font-family: var(--display-font);
  font-size: clamp(1.25rem, 1.8vw, 1.9rem);
  font-weight: 700;
  line-height: 1.03;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.7), 0 0 1.1rem rgba(255, 241, 204, 0.11);
}

.shell-card-browser-row-copy > small {
  font-size: clamp(0.88rem, 1.05vw, 1.02rem);
  line-height: 1.3;
  max-width: 58rem;
}

.shell-card-browser-row--dex-frame .shell-card-browser-row-copy {
  gap: 0.62rem;
}

.shell-card-browser-row--dex-frame .shell-card-browser-row-detail {
  color: color-mix(in srgb, var(--text) 78%, var(--muted));
  display: -webkit-box;
  font-size: clamp(0.9rem, 1.05vw, 1.02rem);
  line-height: 1.28;
  margin-top: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.shell-card-browser-row-kicker {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  min-width: 0;
}

.shell-card-browser-row-kicker > span,
.shell-card-browser-row-kicker > small {
  border: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 42%, var(--line-soft));
  color: color-mix(in srgb, var(--accent) 74%, #ffffff 26%);
  display: inline-flex;
  font-size: 0.68rem;
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
  max-width: 100%;
  padding: 0.28rem 0.42rem;
  text-transform: uppercase;
}

.shell-card-browser-row-kicker > small {
  color: var(--muted);
  text-transform: none;
}

.shell-card-browser-row-kicker > .shell-card-browser-row-status-pill {
  color: color-mix(in srgb, var(--text) 82%, var(--accent));
}

.shell-card-browser-row-stat {
  align-items: end;
  align-self: center;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--card-accent, var(--accent)) 16%, rgba(255, 255, 255, 0.04)), rgba(0, 0, 0, 0.28));
  border: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 48%, var(--line-soft));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.045), 0 0.7rem 1.8rem rgba(0, 0, 0, 0.24);
  color: color-mix(in srgb, var(--accent) 78%, #ffffff 22%);
  display: grid;
  gap: 0.18rem;
  justify-items: end;
  line-height: 1.1;
  max-width: 9.4rem;
  min-width: 5.2rem;
  overflow-wrap: anywhere;
  padding: 0.58rem 0.68rem;
  text-align: right;
}

.shell-card-browser-row--dex-frame .shell-card-browser-row-stat {
  align-self: stretch;
  justify-items: start;
  margin-top: 0.1rem;
  max-width: 100%;
  min-width: 0;
  text-align: left;
  width: 100%;
}

.shell-card-browser-row-stat small {
  color: var(--muted);
  font-size: 0.66rem;
  margin: 0;
  text-transform: uppercase;
}

.shell-card-browser-row-stat strong {
  color: color-mix(in srgb, var(--accent) 72%, #ffffff 28%);
  font-size: clamp(1rem, 1.35vw, 1.25rem);
  font-weight: 800;
  line-height: 1;
}

.shell-card-browser-row-actions,
.compendium-row-actions {
  align-items: center;
  bottom: 0.45rem;
  display: inline-flex;
  gap: 0.35rem;
  justify-content: flex-end;
  position: absolute;
  right: 0.45rem;
  z-index: 3;
}

.shell-card-browser-row-actions button,
.compendium-row-actions button {
  min-height: 2rem;
  min-width: 2.2rem;
  padding: 0.3rem 0.5rem;
}

.shell-card-browser-row-qr.card-qr-share-button {
  border-color: rgba(0, 0, 0, 0.76);
  border-radius: 0;
  bottom: 0.58rem;
  box-shadow: 0 0.16rem 0.65rem rgba(0, 0, 0, 0.58);
  height: 1.45rem;
  min-height: 0;
  place-items: center;
  position: absolute;
  right: 0.58rem;
  width: 1.45rem;
  z-index: 4;
}

.shell-card-browser-row-qr.card-qr-share-button .card-row-qr-code {
  align-items: center;
  display: grid;
  height: 1.32rem;
  justify-items: center;
  overflow: hidden;
  width: 1.32rem;
}

.shell-card-browser-row-qr.card-qr-share-button .card-row-qr-code svg {
  display: block;
  height: 100%;
  width: 100%;
}

.shell-card-browser-row-badges {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.28rem;
  min-width: 0;
}

.shell-card-browser-row-family,
.shell-card-browser-row-badges .nysa-status-badge {
  align-items: center;
  background: rgba(255, 247, 219, 0.1);
  border: 1px solid rgba(255, 247, 219, 0.24);
  border-radius: 999px;
  color: rgba(255, 247, 219, 0.9);
  display: inline-flex;
  gap: 0.22rem;
  line-height: 1;
  max-width: 100%;
  padding: 0.16rem 0.34rem;
}

.shell-card-browser-row-family .nysa-glyph,
.shell-card-browser-row-badges .nysa-status-badge .nysa-glyph {
  height: 0.72rem;
  width: 0.72rem;
}

.shell-card-browser-row-pips .card-signal-cluster {
  height: auto;
  margin: 0;
  max-width: none;
}

.shell-card-browser-row-pips .card-signal-dot {
  align-items: center;
  background:
    radial-gradient(circle at 32% 24%, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.4) 18%, transparent 35%),
    radial-gradient(circle at 66% 72%, rgba(0, 0, 0, 0.36), transparent 52%),
    var(--signal-color, var(--card-accent));
  border: 1px solid rgba(23, 19, 20, 0.82);
  border-radius: 50%;
  box-shadow: 0 0 calc(2px + (var(--signal-strength, 0.7) * 4px)) var(--signal-color, var(--card-accent));
  color: rgba(23, 19, 20, 0.9);
  display: inline-grid;
  flex-basis: 13px;
  height: 13px;
  min-height: 0;
  min-width: 0;
  padding: 0;
  place-items: center;
  width: 13px;
}

.shell-card-browser-row-pips .card-signal-dot .nysa-glyph {
  height: 8px;
  pointer-events: none;
  width: 8px;
}

.shell-card-browser-row-art {
  align-self: stretch;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), transparent 36%),
    rgba(0, 0, 0, 0.34);
  border-left: 1px solid var(--line-soft);
  border-right: 1px solid var(--line-soft);
  display: block;
  grid-column: 2;
  grid-row: 1;
  min-height: 14.3rem;
  overflow: hidden;
  position: relative;
}

.shell-card-browser-row-art::before {
  border: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 46%, rgba(255, 255, 255, 0.12));
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.52);
  content: "";
  inset: 0.45rem;
  pointer-events: none;
  position: absolute;
  z-index: 2;
}

.shell-card-browser-row-art::after {
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.62)),
    radial-gradient(circle at 22% 12%, rgba(255, 255, 255, 0.18), transparent 32%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}

.shell-card-browser-row-art img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  transform: scale(var(--card-art-zoom, 1.015));
  transform-origin: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  width: 100%;
}

.shell-card-browser-row:hover,
.shell-card-browser-row:focus-visible,
.compendium-row:hover,
.compendium-row:focus-visible {
  box-shadow: none;
}

.shell-card-browser-row-shell:hover,
.shell-card-browser-row-shell:focus-within,
.compendium-row-shell:hover,
.compendium-row-shell:focus-within {
  border-color: color-mix(in srgb, var(--accent) 64%, var(--line));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent);
}

.shell-card-browser-deck-board,
.compendium-deck-board {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr));
  min-width: 0;
}

.shell-card-browser-stack,
.card-stack {
  background: color-mix(in srgb, var(--panel) 84%, transparent);
  border: 1px solid var(--line-soft);
  display: grid;
  gap: 0.7rem;
  min-width: 0;
  padding: 0.75rem;
}

.shell-card-browser-stack header,
.card-stack header {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  justify-content: space-between;
}

.shell-card-browser-stack header h3,
.card-stack header h3 {
  margin: 0;
}

.shell-card-browser-stack header span,
.card-stack header span {
  color: var(--muted);
  font-size: 0.78rem;
}

.shell-card-browser-stack-pile,
.card-stack-pile {
  display: grid;
  gap: 0.62rem;
  grid-template-columns: repeat(auto-fill, minmax(min(11rem, 100%), 1fr));
  min-width: 0;
}

.shell-card-browser-stack-card,
.stack-card {
  display: grid;
  min-width: 0;
}

.shell-card-browser-stack-card .nysa-card,
.stack-card .nysa-card {
  height: 100%;
}

[data-card-browser-mode="dex"],
.offering-market-grid--dex {
  grid-template-columns: minmax(0, 1fr);
  justify-items: stretch;
  width: 100%;
}

.card-grid[data-card-browser-mode="dex"] {
  grid-template-columns: minmax(0, 1fr);
  justify-items: stretch;
}

.compendium-discover-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(min(12rem, 100%), 1fr));
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.compendium-discover-grid button {
  align-content: center;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 62%),
    color-mix(in srgb, var(--panel) 86%, transparent);
  border: 1px solid var(--line-soft);
  color: var(--text);
  display: grid;
  gap: 0.16rem;
  min-height: 4.8rem;
  padding: 0.75rem;
  text-align: left;
}

.compendium-discover-grid button:hover {
  background: color-mix(in srgb, var(--accent) 12%, var(--panel));
  border-color: color-mix(in srgb, var(--accent) 55%, var(--line));
}

.compendium-discover-grid span {
  font-family: var(--display-font);
  letter-spacing: 0;
}

.compendium-discover-grid small {
  color: var(--muted);
}

.compendium-toolbar {
  align-items: end;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(14rem, 1fr) minmax(10rem, 16rem);
  max-width: 100%;
  min-width: 0;
}

.compendium-control-deck .compendium-toolbar {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  position: static;
}

.compendium-control-deck .compendium-toolbar--search-only {
  grid-template-columns: minmax(0, 1fr);
}

.deck-control-deck .deck-toolbar {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
  position: static;
  top: auto;
  z-index: auto;
}

.deck-control-deck .deck-toolbar--filters {
  grid-template-columns: minmax(10rem, 1fr) minmax(8rem, 0.75fr) minmax(12rem, 1.25fr);
}

.deck-control-deck .deck-toolbar--search-only {
  grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 720px) {
  .compendium-surface--v4 {
    gap: 0.65rem;
  }

  .compendium-v4-console {
    gap: 0.42rem;
    max-width: 100%;
    overflow-x: clip;
    padding: 0.42rem;
    width: 100%;
  }

  .shell-card-browser-control-drawer > summary {
    min-height: 1.85rem;
    padding: 0.26rem 0.45rem;
  }

  .shell-card-browser-control-drawer > summary small {
    display: none;
  }

  .shell-card-browser-control-drawer[open] {
    padding: 0 0.42rem 0.42rem;
  }

  .shell-card-browser-control-drawer[open] > summary {
    margin-inline: -0.42rem;
  }

  .shell-card-browser-control-grid {
    gap: 0.42rem;
    max-width: calc(100vw - 1.6rem);
  }

  .shell-card-browser-control-grid > label,
  .shell-card-browser-control-grid .compendium-toolbar label {
    gap: 0;
    position: relative;
  }

  .shell-card-browser-control-grid > label > span,
  .shell-card-browser-control-grid .compendium-toolbar label span {
    background: color-mix(in srgb, var(--surface-strong) 88%, transparent);
    color: var(--muted);
    font-size: 0.58rem;
    left: 0.48rem;
    line-height: 1;
    padding: 0 0.18rem;
    position: absolute;
    text-transform: uppercase;
    top: -0.05rem;
    z-index: 1;
  }

  .shell-card-browser-control-drawer :is(input, select) {
    min-height: 2.12rem;
    padding: 0.58rem 0.55rem 0.34rem;
  }

  .shell-card-browser-control-drawer .card-browser-mode {
    min-height: 2.12rem;
    padding: 0.18rem;
    width: 100%;
  }

  .shell-card-browser-control-drawer .card-browser-mode button {
    min-height: 1.62rem;
    padding: 0.25rem 0.42rem;
  }

  .shell-card-browser-control-grid > label:nth-of-type(1) {
    grid-column: 1 / -1;
  }

  .shell-card-browser-control-grid > label:nth-of-type(2),
  .shell-card-browser-control-grid > label:nth-of-type(3) {
    grid-column: auto;
  }

  .shell-card-browser-control-drawer .journal-tabs,
  .shell-card-browser-control-drawer .compendium-tabs {
    gap: 0.28rem;
    inline-size: 100%;
    margin-inline: 0;
    max-width: calc(100vw - 1.6rem);
    padding-bottom: 0;
    width: 100%;
  }

  .shell-card-browser-control-drawer .journal-tabs button,
  .shell-card-browser-control-drawer .compendium-tabs button {
    max-width: min(9.5rem, 64vw);
    min-height: 1.9rem;
    padding: 0.28rem 0.46rem;
  }

  .shell-card-browser-control-drawer .quest-filter-toolbar {
    grid-column: 1 / -1;
  }

  .compendium-v4-tools {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .shell-card-browser-control-grid,
  .shell-card-browser-control-drawer .vendor-quest-controls {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .quest-control-deck .shell-card-browser-control-grid > label:first-child,
  .quest-control-deck .quest-filter-toolbar,
  .quest-control-deck .quest-filter-tabs {
    grid-column: 1 / -1;
  }

  .quest-control-deck .quest-filter-tabs {
    max-width: 100%;
    overflow: visible;
  }

  .quest-control-deck .quest-filter-tabs button {
    flex: 1 1 calc(50% - 0.25rem);
    max-width: none;
    min-height: 2.35rem;
    min-width: 0;
    padding: 0.42rem 0.55rem;
  }

  .card-browser-mode {
    width: 100%;
  }

  .card-browser-mode button {
    flex: 1 1 0;
  }

  .compendium-row {
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 3.9rem;
    padding: 0.48rem 0.6rem;
  }

  .shell-card-browser-row-shell,
  .compendium-row-shell {
    grid-template-columns: 0.32rem minmax(6.8rem, 8rem) minmax(0, 1fr);
    min-height: 13.6rem;
  }

  .shell-card-browser-row-shell--dex-frame {
    grid-template-rows: auto minmax(0, 1fr);
    min-height: 15.7rem;
  }

  .shell-card-browser-row-title {
    grid-column: 2 / 4;
    min-height: 2.6rem;
    padding: 0.52rem 0.56rem 0.48rem;
  }

  .shell-card-browser-row-title strong {
    font-size: 1.02rem;
  }

  .shell-card-browser-row,
  .compendium-row {
    grid-column: 3;
    grid-template-columns: minmax(0, 1fr);
    min-height: 13.6rem;
    padding: 0.82rem 0.68rem;
  }

  .shell-card-browser-row--dex-frame {
    grid-row: 2;
    min-height: 13.1rem;
    padding: 0.7rem 0.62rem 3rem;
  }

  .shell-card-browser-row-stat {
    align-self: end;
    justify-items: start;
    max-width: min(100%, 9rem);
    min-width: 0;
    text-align: left;
  }

  .shell-card-browser-row--dex-frame .shell-card-browser-row-stat {
    align-self: stretch;
    max-width: 100%;
    width: 100%;
  }

  .shell-card-browser-row-art {
    min-height: 13.6rem;
  }

  .shell-card-browser-row-shell--dex-frame .shell-card-browser-row-art {
    min-height: 13.1rem;
  }

  .shell-card-browser-row-qr.card-qr-share-button {
    bottom: 0.5rem;
    height: 1.28rem;
    right: 0.5rem;
    width: 1.28rem;
  }

  .shell-card-browser-row-qr.card-qr-share-button .card-row-qr-code {
    height: 1.16rem;
    width: 1.16rem;
  }

  .card-stack-pile {
    grid-template-columns: repeat(auto-fill, minmax(min(9rem, 100%), 1fr));
  }

  .deck-control-deck .deck-toolbar--filters {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* House-governed Event Maker */
.event-maker {
  container-type: inline-size;
}

.event-maker .inspector-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.event-maker .inspector-edit-row {
  min-width: 0;
}

.event-maker .inspector-edit-row:has(textarea[name="description"]) {
  grid-column: 1 / -1;
}

.event-maker [data-event-maker-action-rail] {
  position: sticky;
  bottom: 0.5rem;
  z-index: 4;
  padding: 0.75rem;
  border: 1px solid var(--line, rgba(255,255,255,.16));
  border-radius: 0.85rem;
  background: color-mix(in srgb, var(--surface, #18201f) 92%, transparent);
  backdrop-filter: blur(10px);
}

.event-maker form[data-governed-form] {
  min-width: 0;
}

.event-maker form[data-governed-form] :is(input, select, textarea, button) {
  min-height: 2.75rem;
  max-width: 100%;
}

.event-maker [role="status"] {
  min-height: 1.4em;
}

.compendium-surface :is(button, a.button) {
  min-height: 2.25rem;
}

@media (max-width: 720px) {
  .event-maker .inspector-edit-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-maker .inspector-edit-row:has(textarea[name="description"]) {
    grid-column: auto;
  }

  .event-maker [data-event-maker-action-rail] {
    bottom: 0.25rem;
  }

  .event-maker [data-event-maker-action-rail] > *,
  .event-maker [data-event-maker-action-rail] form,
  .event-maker [data-event-maker-action-rail] button {
    width: 100%;
  }
}

.quest-control-deck {
  margin-bottom: 0;
}

.quest-control-deck .quest-filter-toolbar,
.quest-control-deck .quest-filter-tabs {
  box-sizing: border-box;
  grid-column: 1 / -1;
  width: 100%;
}

.quest-control-deck .quest-filter-toolbar {
  display: grid;
  min-width: 0;
}

.quest-filter-tabs {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  justify-content: flex-start;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
  padding-bottom: 0;
}

.quest-control-deck .quest-filter-tabs::before {
  display: none;
}

.quest-filter-tabs button {
  flex: 1 1 min(8rem, 46%);
  justify-content: center;
  min-width: min(8rem, 46%);
  white-space: nowrap;
}

.quest-control-deck .quest-filter-toolbar {
  grid-template-columns: minmax(0, 1fr);
}

.compendium-toolbar label {
  display: grid;
  gap: 0.35rem;
}

.compendium-toolbar span {
  color: var(--muted);
  font-size: 0.78rem;
  text-transform: uppercase;
}

.compendium-toolbar input,
.compendium-toolbar select {
  background: rgba(0, 0, 0, 0.42);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.5rem;
  padding: 0.55rem 0.7rem;
  width: 100%;
}

.card-grid {
  display: grid;
  gap: 1.15rem;
  grid-template-columns: repeat(auto-fill, minmax(min(16rem, 100%), 1fr));
  justify-items: center;
  min-width: 0;
}

.shell-journal-host {
  display: block;
  justify-items: stretch;
  min-height: 0;
}

.nysa-card {
  --small-card-width: 246px;
  --card-accent: #26714a;
  --card-accent-rgb: 38, 113, 74;
  --card-glow: rgba(38, 113, 74, 0.42);
  --card-wash-a: rgba(38, 113, 74, 0.88);
  --card-wash-b: rgba(76, 54, 95, 0.82);
  --card-edge-line: rgba(255, 255, 255, 0.34);
  --card-panel-texture: repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.22) 0 3px, rgba(211, 222, 214, 0.42) 3px 7px);
  color: #171314;
  display: grid;
  grid-template-rows: auto auto;
  justify-items: center;
  min-width: 0;
  position: relative;
  width: min(100%, var(--small-card-width));
  transition: filter 160ms ease, transform 160ms ease;
}

.nysa-card-type-avatar { --card-accent: #d19b6f; --card-accent-rgb: 209, 155, 111; --card-glow: rgba(209, 155, 111, 0.46); --card-wash-a: rgba(209, 155, 111, 0.9); --card-wash-b: rgba(105, 137, 184, 0.78); }
.nysa-card-type-quest { --card-accent: #d96f5f; --card-accent-rgb: 217, 111, 95; --card-glow: rgba(217, 111, 95, 0.52); --card-wash-a: rgba(128, 46, 50, 0.95); --card-wash-b: rgba(216, 184, 90, 0.76); --card-edge-line: rgba(255, 221, 149, 0.5); --card-panel-texture: repeating-linear-gradient(135deg, rgba(255, 246, 216, 0.34) 0 5px, rgba(222, 180, 111, 0.2) 5px 10px); }
.nysa-card-type-offering { --card-accent: #8aa35f; --card-accent-rgb: 138, 163, 95; --card-glow: rgba(138, 163, 95, 0.46); --card-wash-a: rgba(56, 93, 61, 0.94); --card-wash-b: rgba(190, 150, 87, 0.78); --card-edge-line: rgba(248, 226, 171, 0.46); --card-panel-texture: repeating-linear-gradient(90deg, rgba(255, 250, 224, 0.34) 0 4px, rgba(171, 143, 93, 0.18) 4px 9px); }
.nysa-card-type-discipline { --card-accent: #9fe08c; --card-accent-rgb: 159, 224, 140; --card-glow: rgba(159, 224, 140, 0.46); --card-wash-a: rgba(63, 127, 84, 0.9); --card-wash-b: rgba(209, 155, 111, 0.72); }
.nysa-card-type-artist,
.nysa-card-type-media, .nysa-card-type-song-mix { --card-accent: #7fb7ff; --card-accent-rgb: 127, 183, 255; --card-glow: rgba(127, 183, 255, 0.46); --card-wash-a: rgba(77, 102, 173, 0.9); --card-wash-b: rgba(69, 200, 159, 0.72); }
.nysa-card-type-event { --card-accent: #e0c15a; --card-accent-rgb: 224, 193, 90; --card-glow: rgba(224, 193, 90, 0.48); --card-wash-a: rgba(197, 141, 53, 0.9); --card-wash-b: rgba(69, 200, 159, 0.7); }
.nysa-card-type-place,
.nysa-card-type-location { --card-accent: #8c7ae6; --card-accent-rgb: 140, 122, 230; --card-glow: rgba(140, 122, 230, 0.48); --card-wash-a: rgba(76, 54, 95, 0.92); --card-wash-b: rgba(105, 137, 184, 0.72); --card-edge-line: rgba(170, 221, 255, 0.44); --card-panel-texture: linear-gradient(90deg, rgba(255, 255, 255, 0.24) 1px, transparent 1px), linear-gradient(0deg, rgba(255, 255, 255, 0.2) 1px, transparent 1px); }
.nysa-card-type-guild { --card-accent: #45c89f; --card-accent-rgb: 69, 200, 159; --card-glow: rgba(69, 200, 159, 0.5); --card-wash-a: rgba(29, 126, 96, 0.9); --card-wash-b: rgba(69, 200, 159, 0.76); }
.nysa-card-type-circle { --card-accent: #f17db1; --card-accent-rgb: 241, 125, 177; --card-glow: rgba(241, 125, 177, 0.46); --card-wash-a: rgba(157, 72, 124, 0.9); --card-wash-b: rgba(105, 137, 184, 0.72); }
.nysa-card-type-house,
.nysa-card-type-product,
.nysa-card-type-artifact { --card-accent: #c8a35d; --card-accent-rgb: 200, 163, 93; --card-glow: rgba(200, 163, 93, 0.5); --card-wash-a: rgba(124, 95, 49, 0.94); --card-wash-b: rgba(209, 155, 111, 0.76); }
.nysa-card-type-service,
.nysa-card-type-video { --card-accent: #62d5e8; --card-accent-rgb: 98, 213, 232; --card-glow: rgba(98, 213, 232, 0.5); --card-wash-a: rgba(23, 91, 115, 0.94); --card-wash-b: rgba(69, 200, 159, 0.74); }

.nysa-glyph {
  display: inline-grid;
  height: 1em;
  line-height: 1;
  place-items: center;
  width: 1em;
}

.nysa-glyph svg {
  display: block;
  fill: none;
  height: 100%;
  overflow: visible;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  width: 100%;
}

.nysa-card__button {
  background: transparent;
  border: 0;
  color: inherit;
  display: block;
  min-height: 0;
  padding: 0;
  width: 100%;
}

.nysa-card__button:hover {
  background: transparent;
}

.nysa-card .card-flip-stage {
  display: block;
  margin: 0 auto;
  min-width: 0;
  perspective: 1200px;
  position: relative;
  width: min(100%, var(--small-card-width));
}

.nysa-card .nysa-card__front {
  display: block;
  width: 100%;
}

.nysa-card .nysa-card__front .card-container {
  margin: 0;
}

.nysa-card .nysa-card__back {
  background:
    var(--card-panel-texture),
    linear-gradient(180deg, color-mix(in srgb, var(--card-accent) 20%, #fffaf0 80%), #efe0bd);
  box-sizing: border-box;
  color: #252525;
  display: none;
  font-family: var(--body-font);
  overflow: visible;
  padding: 0.72rem;
  text-align: left;
}

.nysa-card.is-card-flipped .nysa-card__front {
  display: none;
}

.nysa-card.is-card-flipped .nysa-card__back {
  display: block;
  min-height: calc(var(--small-card-width) * 1.4);
}

.nysa-card:not(.is-card-flipped) .nysa-card__back {
  display: none;
}

.nysa-card.is-card-flip-out:not(.is-card-flipped) .nysa-card__front,
.nysa-card.is-card-flipped.is-card-flip-out .nysa-card__back {
  animation: nysaCardFaceFlipOut 190ms ease-in forwards;
  transform-origin: center;
}

.nysa-card.is-card-flip-in:not(.is-card-flipped) .nysa-card__front,
.nysa-card.is-card-flipped.is-card-flip-in .nysa-card__back {
  animation: nysaCardFaceFlipIn 300ms cubic-bezier(0.18, 0.72, 0.2, 1.08) forwards;
  transform-origin: center;
}

@keyframes nysaCardFaceFlipOut {
  from {
    filter: brightness(1);
    opacity: 1;
    transform: perspective(900px) rotateY(0) rotateZ(0) scale(1);
  }
  to {
    filter: brightness(0.72);
    opacity: 0.2;
    transform: perspective(900px) rotateY(82deg) rotateZ(-1.5deg) scale(0.94);
  }
}

@keyframes nysaCardFaceFlipIn {
  from {
    filter: brightness(0.84);
    opacity: 0.18;
    transform: perspective(900px) rotateY(-82deg) rotateZ(1.5deg) scale(0.94);
  }
  64% {
    filter: brightness(1.08);
    opacity: 1;
    transform: perspective(900px) rotateY(8deg) rotateZ(0) scale(1.02);
  }
  to {
    filter: brightness(1);
    opacity: 1;
    transform: perspective(900px) rotateY(0) rotateZ(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nysa-card.is-card-flip-out:not(.is-card-flipped) .nysa-card__front,
  .nysa-card.is-card-flipped.is-card-flip-out .nysa-card__back,
  .nysa-card.is-card-flip-in:not(.is-card-flipped) .nysa-card__front,
  .nysa-card.is-card-flipped.is-card-flip-in .nysa-card__back {
    animation: none;
  }
}

@media (max-width: 720px) {
  .inspector-card-summary .nysa-card,
  .nysa-card.nysa-card--inspector {
    --small-card-width: min(100%, calc(100dvw - 1.5rem));
  }
}

.card-flip-edge {
  align-items: center;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-left: 0;
  border-radius: 0 999px 999px 0;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.16) inset,
    0 0 0.7rem rgba(255, 255, 255, 0.22);
  color: #fff;
  cursor: pointer;
  display: grid;
  font-family: var(--body-font);
  font-size: 0.58rem;
  font-weight: 900;
  letter-spacing: 0;
  bottom: 0;
  min-height: 0;
  padding: 0;
  position: absolute;
  left: auto;
  right: -1.18rem;
  text-shadow: 0 0 0.45rem rgba(255, 255, 255, 0.88);
  top: 0;
  transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  width: 1.42rem;
  z-index: 4;
}

.card-flip-edge span {
  line-height: 1;
  transform: rotate(90deg);
  writing-mode: horizontal-tb;
  white-space: nowrap;
}

.card-flip-edge:hover,
.card-flip-edge:focus-visible,
.nysa-card.is-card-flipped .card-flip-edge {
  background: rgba(255, 255, 255, 0.18);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.32) inset,
    0 0 0.9rem rgba(255, 255, 255, 0.52),
    0 0 1.4rem var(--card-glow);
  outline: 0;
  transform: translateX(0.08rem);
}

@media (max-width: 720px) {
  .card-flip-edge {
    right: -0.05rem;
  }

  .card-flip-edge:hover,
  .card-flip-edge:focus-visible,
  .nysa-card.is-card-flipped .card-flip-edge {
    transform: none;
  }
}

.nysa-card:hover {
  filter: drop-shadow(0 0 16px var(--card-glow));
  transform: translateY(-2px);
}

.nysa-card .card-container {
  aspect-ratio: 5 / 7;
  background: #171314;
  border: 1px solid #000;
  border-radius: 22px;
  box-shadow: -8px 9px 16px -3px rgba(0, 0, 0, 0.62), var(--soft-shadow);
  display: block;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  width: min(100%, var(--small-card-width));
}

.nysa-card.is-card-expanded .card-container {
  aspect-ratio: auto;
  min-height: calc(var(--small-card-width) * 1.4);
  overflow: visible;
}

.nysa-card.is-card-expanded .card-background {
  inset: auto;
  margin: 3.2% 5% 6%;
  min-height: 0;
  position: relative;
  width: 90%;
}

.nysa-card.is-card-expanded .card-frame {
  align-content: start;
  display: grid;
  grid-template-rows: auto minmax(0, 0.42fr) auto minmax(0, 1fr) auto;
  height: auto;
  min-height: calc(var(--small-card-width) * 1.27);
  padding-bottom: 0.38rem;
}

.nysa-card.is-card-expanded .frame-text-box {
  display: grid;
  flex: none;
  justify-content: stretch;
  max-height: none;
  overflow: visible;
}

.nysa-card.is-card-expanded .frame-art-crop {
  flex: none;
  min-height: calc(var(--small-card-width) * 0.28);
}

.nysa-card .card-container::before,
.nysa-card .card-container::after {
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 2;
}

.nysa-card .card-container::before {
  background:
    linear-gradient(90deg, var(--card-edge-line) 0 1px, transparent 1px calc(100% - 1px), var(--card-edge-line) calc(100% - 1px)),
    linear-gradient(0deg, var(--card-edge-line) 0 1px, transparent 1px calc(100% - 1px), var(--card-edge-line) calc(100% - 1px));
  border-radius: inherit;
  opacity: 0.8;
}

.nysa-card .card-container::after {
  opacity: 0;
}

.nysa-card .card-background {
  background:
    radial-gradient(circle at 28% 18%, rgba(255, 255, 255, 0.34), transparent 18%),
    linear-gradient(135deg, var(--card-wash-a), rgba(25, 35, 26, 0.94) 48%, var(--card-wash-b)),
    #bbb;
  border-bottom-left-radius: 8%;
  border-bottom-right-radius: 8%;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  display: flex;
  inset: 3.2% 5% 7%;
  position: absolute;
  z-index: 1;
}

.nysa-card .card-frame {
  display: flex;
  flex-direction: column;
  height: 99%;
  left: 1.2%;
  min-height: 0;
  position: relative;
  top: 0.5%;
  width: 97%;
}

.nysa-card .frame-header,
.nysa-card .frame-type-line {
  align-items: center;
  background:
    linear-gradient(0deg, rgba(201, 216, 201, 0.3), rgba(201, 216, 209, 0.3)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.28) 0 2px, rgba(210, 222, 211, 0.5) 2px 5px),
    #d9e2d8;
  border: 1px solid #fff;
  border-bottom: 4px solid #a9a9a9;
  border-left: 2px solid #a9a9a9;
  border-radius: 18px / 40px;
  box-shadow: 0 0 0 2px #171314, 0 0 0 5px var(--card-accent), -3px 3px 2px 5px #171314;
  display: flex;
  flex: 0 0 auto;
  gap: 0.35rem;
  justify-content: flex-start;
  margin: 2.2% 5px 1.6%;
  min-height: 2.45rem;
  overflow: hidden;
  padding: 1.9% 0;
}

.nysa-card .frame-header,
.nysa-card .frame-type-line,
.nysa-card .frame-text-box,
.nysa-card .name,
.nysa-card .type,
.nysa-card .description,
.nysa-card .quote-text {
  color: #252525;
}

.nysa-card .frame-type-line {
  align-items: center;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 26px;
  margin-top: 0;
}

.nysa-card .name,
.nysa-card .type {
  align-self: center;
  flex: 1 1 auto;
  font-family: var(--display-font);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.08;
  margin: 0 0 0 10px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nysa-card .frame-header .name {
  display: flex;
  align-items: center;
  text-align: left;
}

.nysa-card .frame-type-line .type {
  align-items: center;
  display: flex;
  grid-column: 2;
  margin-left: 0;
  text-align: left;
}

.nysa-card .mana-icon {
  background:
    radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.8), transparent 25%),
    var(--accent-2);
  border-radius: 50%;
  box-shadow: -0.05em 0.12em 0 0 #000;
  color: #171314;
  display: grid;
  flex: 0 0 auto;
  font-family: var(--body-font);
  font-size: 0.72rem;
  font-weight: 900;
  height: 22px;
  margin-left: auto;
  margin-right: 8px;
  place-items: center;
  width: 22px;
}

.nysa-card .card-signal-cluster {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  flex-direction: row-reverse;
  gap: 0.22rem;
  height: 26px;
  justify-content: flex-start;
  margin-left: auto;
  margin-right: 7px;
  max-width: 5rem;
  min-width: 0;
  overflow: visible;
}

.nysa-card .card-signal-dot {
  --signal-color: var(--card-accent);
  align-items: center;
  background:
    radial-gradient(circle at 32% 24%, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.4) 18%, transparent 35%),
    radial-gradient(circle at 66% 72%, rgba(0, 0, 0, 0.36), transparent 52%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.16), rgba(0, 0, 0, 0.34)),
    var(--signal-color);
  border: 1px solid rgba(23, 19, 20, 0.82);
  border-radius: 50%;
  box-shadow:
    inset -2px -2px 3px rgba(0, 0, 0, 0.36),
    inset 1px 1px 2px rgba(255, 255, 255, 0.44),
    0 1px 0 #000,
    0 0 calc(3px + (var(--signal-strength, 0.7) * 6px)) var(--signal-color);
  color: transparent;
  cursor: pointer;
  display: inline-grid;
  flex: 0 0 16px;
  height: 16px;
  min-height: 0;
  min-width: 0;
  padding: 0;
  transform: translateZ(0);
  width: 16px;
  animation: cardSignalBreathe calc(2400ms + (var(--signal-index, 0) * 220ms)) ease-in-out infinite;
}

.nysa-card .card-signal-dot--glyph {
  color: rgba(23, 19, 20, 0.9);
}

.nysa-card .card-signal-dot--glyph .nysa-glyph {
  height: 10px;
  pointer-events: none;
  width: 10px;
}

.nysa-card .card-signal-dot--glyph .nysa-glyph svg {
  stroke-width: 2.8;
}

.nysa-card .card-signal-dot--static {
  cursor: help;
}

.nysa-card .card-signal-dot:hover,
.nysa-card .card-signal-dot:focus-visible {
  outline: 1px solid rgba(255, 255, 255, 0.86);
  outline-offset: 2px;
  transform: scale(1.16);
}

@keyframes cardSignalBreathe {
  0%,
  100% {
    opacity: calc(0.68 + (var(--signal-strength, 0.7) * 0.22));
    translate: 0 0;
  }
  50% {
    opacity: 1;
    translate: 0 -1px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nysa-card .card-signal-dot {
    animation: none;
  }
}

.nysa-card .frame-art-crop {
  box-shadow: 0 0 0 2px #171314, 0 0 0 5px var(--card-accent), -3px 3px 2px 5px #171314;
  display: block;
  flex: 0 0 38%;
  margin: 0 10px 7px;
  min-height: 0;
  overflow: hidden;
  position: relative;
  width: calc(100% - 20px);
}

.nysa-card .frame-art {
  border: 0;
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  transform: scale(var(--card-art-zoom, 1));
  transform-origin: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  width: 100%;
}

.nysa-card .frame-art-crop--qr {
  background: #fffaf0;
  box-sizing: border-box;
  display: grid;
  flex-basis: 40%;
  padding: 0.32rem;
  place-items: center;
}

.nysa-card .frame-art--qr {
  align-items: center;
  display: grid;
  height: 100%;
  justify-items: center;
  overflow: hidden;
  width: 100%;
}

.nysa-card .frame-art--qr svg {
  display: block;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}

.nysa-card-type-offering .frame-art-crop--qr {
  margin-bottom: 5px;
}

.nysa-card-type-offering .frame-type-line {
  margin-bottom: 5px;
}

.nysa-card-type-offering .frame-text-box {
  padding-block: 4%;
}

.offering-card-qr-badge {
  align-items: center;
  background: #fffaf0;
  border: 2px solid #171314;
  bottom: 0.38rem;
  box-shadow: 0 0.18rem 0.5rem rgba(0, 0, 0, 0.46);
  display: grid;
  height: 3.1rem;
  justify-items: center;
  padding: 0.16rem;
  position: absolute;
  right: 0.38rem;
  width: 3.1rem;
}

.offering-card-qr-badge svg {
  display: block;
  height: 100%;
  max-width: 100%;
  width: 100%;
}

.quest-card-qr-badge {
  border-color: #5d241e;
}

.offering-card-qr-fallback {
  color: #171314;
  font-family: var(--display-font);
  font-size: 0.7rem;
  font-weight: 900;
}

.nysa-card .set-icon {
  align-self: center;
  background:
    radial-gradient(circle at 36% 30%, rgba(255, 255, 255, 0.55), transparent 28%),
    color-mix(in srgb, var(--card-accent) 74%, #ffffff 26%);
  border: 1px solid rgba(23, 19, 20, 0.72);
  border-radius: 50%;
  box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.18), 0 1px 0 rgba(255, 255, 255, 0.55);
  color: #171314;
  display: inline-grid;
  font-family: var(--display-font);
  font-size: 1rem;
  font-weight: 900;
  height: 24px;
  grid-column: 3;
  justify-self: end;
  margin-right: 0;
  place-items: center;
  width: 26px;
}

.nysa-card .set-icon--glyph {
  font-size: 0.95rem;
}

.nysa-card .set-icon--glyph .nysa-glyph {
  height: 0.94rem;
  width: 0.94rem;
}

.nysa-card .frame-text-box {
  background:
    var(--card-panel-texture),
    #d3ded6;
  box-shadow: 0 0 0 5px var(--card-accent), -3px 3px 2px 5px #171314;
  display: flex;
  flex: 1;
  flex-direction: column;
  font-size: 0.8rem;
  gap: 0.33rem;
  justify-content: space-around;
  line-height: 1.28;
  margin: 0 10px;
  min-height: 0;
  overflow: hidden;
  padding: 6% 10px;
}

.nysa-card .card-kind {
  color: rgba(37, 37, 37, 0.78);
  font-family: var(--body-font);
  font-size: 0.58rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.nysa-card .frame-text-box .description {
  font-weight: 800;
}

.small-card-inline-rows {
  display: grid;
  gap: 0.25rem;
}

.small-card-inline-rows > span {
  border: 1px solid rgba(37, 37, 37, 0.14);
  display: grid;
  gap: 0.06rem;
  padding: 0.24rem 0.34rem;
}

.small-card-inline-rows small {
  color: rgba(37, 37, 37, 0.62);
  font-family: var(--body-font);
  font-size: 0.54rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.small-card-inline-rows strong {
  color: #252525;
  font-family: var(--body-font);
  font-size: 0.74rem;
  font-weight: 900;
  line-height: 1.1;
}

.small-card-expand-hint {
  color: rgba(37, 37, 37, 0.62);
  font-family: var(--body-font);
  font-size: 0.56rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}

.nysa-card .quote-text {
  display: -webkit-box;
  font-family: var(--display-font);
  font-size: 1.04em;
  font-style: italic;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.nysa-card .frame-bottom-info {
  align-items: end;
  color: #fff;
  display: grid;
  font-size: 0.5rem;
  gap: 0.32rem;
  grid-template-columns: minmax(0, 1fr) 1.55rem minmax(0, 1fr);
  line-height: 1;
  margin: 9px 2px 0;
  min-height: 1.62rem;
  text-transform: uppercase;
}

.nysa-card .fbi-left {
  justify-self: center;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nysa-card .fbi-center {
  align-self: center;
  display: grid;
  justify-self: center;
  min-width: 0;
  place-items: center;
}

.nysa-card .fbi-right {
  grid-column: 3;
  justify-self: center;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nysa-status-badge {
  align-items: center;
  display: inline-flex;
  gap: 0.16rem;
  justify-content: center;
  max-width: 100%;
  min-width: 0;
}

.nysa-status-badge .nysa-glyph {
  flex: 0 0 auto;
  height: 0.64rem;
  width: 0.64rem;
}

.nysa-status-badge span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.card-footer-seal {
  align-items: center;
  background:
    radial-gradient(circle at 50% 36%, rgba(255, 255, 255, 0.78), transparent 34%),
    color-mix(in srgb, var(--card-accent) 28%, #fffaf0 72%);
  border: 1px solid rgba(23, 19, 20, 0.82);
  border-radius: 50%;
  box-shadow:
    0 0 0 2px rgba(23, 19, 20, 0.88),
    0 0 0 4px color-mix(in srgb, var(--card-accent) 72%, #fffaf0 28%),
    0 0.2rem 0.48rem rgba(0, 0, 0, 0.42);
  color: #171314;
  display: grid;
  font-family: var(--body-font);
  font-size: 0.42rem;
  font-weight: 950;
  height: 1.45rem;
  justify-items: center;
  letter-spacing: 0;
  line-height: 1;
  padding: 0.13rem;
  text-transform: uppercase;
  width: 1.45rem;
}

.card-footer-seal .nysa-glyph {
  height: 0.66rem;
  width: 0.66rem;
}

.card-footer-seal span:last-child {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: clip;
}

.nysa-card .frame-bottom-info .card-qr-share-button--footer {
  height: 1.35rem;
  width: 1.35rem;
}

.nysa-card .frame-bottom-info .card-qr-share-button--footer {
  background:
    radial-gradient(circle at 50% 50%, rgba(255, 250, 240, 0.96), rgba(255, 250, 240, 0.78)),
    color-mix(in srgb, var(--card-accent) 24%, #fffaf0 76%);
  border-color: rgba(23, 19, 20, 0.82);
  border-radius: 50%;
  box-shadow:
    0 0 0 2px rgba(23, 19, 20, 0.88),
    0 0 0 4px color-mix(in srgb, var(--card-accent) 72%, #fffaf0 28%),
    0 0.22rem 0.5rem rgba(0, 0, 0, 0.42);
}

.nysa-card .frame-bottom-info .card-qr-share-button--footer.card-qr-share-button--dex {
  height: 1.45rem;
  width: 1.45rem;
}

.nysa-card .frame-bottom-info .card-qr-share-button--footer .card-row-qr-code {
  height: 1.3rem;
  width: 1.3rem;
}

.card-front-flip-hint {
  color: rgba(255, 247, 219, 0.76);
  display: block;
  font-family: var(--body-font);
  font-size: 0.46rem;
  font-weight: 900;
  line-height: 1;
  margin-top: 0.18rem;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 0 0.35rem rgba(0, 0, 0, 0.82);
}

.small-card-back-flip-note {
  color: rgba(255, 247, 219, 0.72);
  font-family: var(--body-font);
  font-size: 0.64rem;
  font-weight: 900;
  line-height: 1.1;
  margin: 0.16rem 0 0;
  text-transform: uppercase;
}

.small-card-expansion {
  background:
    var(--card-panel-texture),
    color-mix(in srgb, var(--card-accent) 14%, #f4ead1 86%);
  border: 1px solid color-mix(in srgb, var(--card-accent) 54%, #171314 46%);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28);
  color: #252525;
  display: none;
  margin: 0.65rem auto 0;
  max-width: var(--small-card-width);
  padding: 0.72rem;
  text-align: left;
}

.nysa-card.is-card-expanded .small-card-expansion {
  display: grid;
  gap: 0.72rem;
}

.small-card-expansion--inside {
  box-shadow: none;
  margin: 0.32rem 0 0;
  max-width: none;
  min-width: 0;
  max-height: min(16rem, calc(var(--small-card-width) * 1.05));
  overflow: auto;
  overflow-wrap: anywhere;
  padding: 0.55rem;
  width: 100%;
}

.nysa-card:not(.is-card-expanded) .small-card-expansion--inside {
  display: none;
}

.nysa-card.is-card-expanded .small-card-expansion--inside {
  display: grid;
}

.small-card-expansion__section {
  display: grid;
  gap: 0.42rem;
}

.small-card-expansion__section h4 {
  color: #252525;
  font-family: var(--display-font);
  font-size: 1rem;
  line-height: 1.05;
  margin: 0;
}

.small-card-expansion__section dl {
  display: grid;
  gap: 0.34rem;
  margin: 0;
}

.small-card-expansion__section dl > div {
  border: 1px solid rgba(37, 37, 37, 0.14);
  display: grid;
  gap: 0.1rem;
  padding: 0.34rem 0.42rem;
}

.small-card-expansion__section dt {
  color: rgba(37, 37, 37, 0.64);
  font-family: var(--body-font);
  font-size: 0.62rem;
  font-weight: 900;
  text-transform: uppercase;
}

.small-card-expansion__section dd {
  color: #252525;
  font-family: var(--body-font);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.22;
  margin: 0;
  overflow-wrap: anywhere;
}

.small-card-expansion__actions {
  display: grid;
  gap: 0.55rem;
}

.small-card-expansion__actions.offering-card {
  background: rgba(255, 250, 240, 0.66);
  border: 1px solid rgba(37, 37, 37, 0.14);
  box-sizing: border-box;
  gap: 0.48rem;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 0.55rem;
  width: 100%;
}

.small-card-expansion__actions.offering-card .offering-tip-presets {
  background: rgba(255, 250, 240, 0.48);
  border-color: rgba(37, 37, 37, 0.16);
  box-sizing: border-box;
  display: grid;
  gap: 0.34rem;
  grid-template-columns: minmax(0, 1fr);
  max-width: 100%;
  min-width: 0;
  padding: 0.48rem;
  width: 100%;
}

.small-card-expansion__actions.offering-card .offering-tip-presets legend {
  color: #252525;
  font-family: var(--body-font);
  font-size: 0.72rem;
  font-weight: 800;
  padding: 0 0.18rem;
}

.small-card-expansion__actions.offering-card .offering-tip-presets label {
  align-items: center;
  display: grid;
  gap: 0.42rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
}

.small-card-expansion__actions.offering-card .offering-tip-presets input[type="radio"] {
  margin: 0;
}

.small-card-expansion__actions.offering-card .offering-note,
.small-card-expansion__actions.offering-card .offering-custom-tip {
  box-sizing: border-box;
  display: grid;
  gap: 0.22rem;
  max-width: 100%;
  min-width: 0;
}

.small-card-expansion__actions.offering-card :is(input, button) {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.small-card-expansion__actions.offering-card .quest-admin-action--primary {
  min-height: 2.35rem;
  padding-inline: 0.65rem;
}

.small-card-expansion__media .module-media {
  background: rgba(255, 250, 240, 0.7);
  border: 1px solid rgba(37, 37, 37, 0.14);
  padding: 0.45rem;
}

.small-card-expansion__media audio,
.small-card-expansion__media video,
.small-card-expansion__media iframe {
  max-width: 100%;
  width: 100%;
}

.small-card-contact-list,
.small-card-deck-list {
  display: grid;
  gap: 0.34rem;
}

.small-card-contact-list a,
.small-card-contact-list span,
.small-card-deck-list button {
  background: rgba(255, 250, 240, 0.62);
  border: 1px solid rgba(37, 37, 37, 0.14);
  color: #252525;
  display: grid;
  font-family: var(--body-font);
  gap: 0.08rem;
  padding: 0.36rem 0.44rem;
  text-align: left;
  text-decoration: none;
}

.small-card-deck-list button strong,
.small-card-deck-list button span {
  color: #252525;
  line-height: 1.14;
}

.small-card-deck-list button span {
  color: rgba(37, 37, 37, 0.68);
  font-size: 0.72rem;
}

.small-card-back-shell {
  background:
    radial-gradient(circle at 24% 8%, rgba(202, 232, 255, 0.26), transparent 18rem),
    linear-gradient(180deg, rgba(19, 58, 92, 0.22), rgba(5, 14, 28, 0.66));
  border-radius: 16px;
  color: #fff8df;
  display: grid;
  gap: 0.7rem;
  min-width: 0;
  overflow: hidden;
  overflow-wrap: anywhere;
  position: relative;
  isolation: isolate;
}

.small-card-back-shell--contract {
  gap: 0.58rem;
}

.small-card-back-shell::before,
.small-card-back-shell::after {
  content: "";
  inset: -1px;
  pointer-events: none;
  position: absolute;
  z-index: -2;
}

.small-card-back-shell::before {
  background:
    linear-gradient(180deg, rgba(8, 33, 58, 0.04), rgba(5, 18, 36, 0.2)),
    var(--card-back-art, none);
  background-position: center;
  background-size: cover;
  filter: blur(3px) saturate(1.55) brightness(1.1);
  opacity: 0.94;
  transform: scale(1.035);
}

.small-card-back-shell::after {
  background:
    radial-gradient(circle at 18% 8%, rgba(215, 242, 255, 0.38), transparent 8rem),
    linear-gradient(145deg, rgba(76, 157, 214, 0.36), rgba(20, 62, 109, 0.2) 44%, rgba(3, 12, 26, 0.48)),
    rgba(27, 87, 135, 0.14);
  z-index: -1;
}

.small-card-back-shell--loading {
  min-height: calc(var(--small-card-width) * 1.18);
  place-content: center;
}

.small-card-back-hero,
.small-card-back-head {
  background:
    linear-gradient(180deg, rgba(179, 224, 255, 0.2), rgba(9, 27, 54, 0.36)),
    rgba(8, 29, 55, 0.48);
  border: 1px solid rgba(203, 235, 255, 0.3);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 18, 36, 0.32);
  backdrop-filter: blur(9px) saturate(1.35);
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr);
  margin: 0;
  min-width: 0;
  padding: 0 0.76rem 0.78rem;
}

.small-card-back-hero__label,
.small-card-back-head .eyebrow {
  background: linear-gradient(90deg, rgba(177, 226, 255, 0.32), rgba(255, 255, 255, 0.08));
  border-bottom: 1px solid rgba(203, 235, 255, 0.28);
  color: color-mix(in srgb, var(--card-accent) 28%, #fff7db 72%);
  display: block;
  font-size: 0.62rem;
  font-weight: 900;
  line-height: 1;
  margin: 0 -0.76rem 0;
  padding: 0.42rem 0.76rem;
  text-transform: uppercase;
}

.small-card-back-hero h3,
.small-card-back-head h3 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: clamp(1.18rem, 6vw, 1.72rem);
  line-height: 1.02;
  margin: 0;
  max-width: 100%;
  overflow-wrap: break-word;
  text-shadow: 0 0.24rem 0.8rem rgba(0, 0, 0, 0.62);
}

.small-card-back-head p {
  color: rgba(255, 250, 226, 0.88);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.26;
  margin: 0;
  max-width: 100%;
}

.small-card-back-stat-chips {
  display: grid;
  gap: 0.38rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.small-card-back-stat-chips span,
.small-card-back-feature,
.small-card-back-action-panel {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.055)),
    rgba(0, 0, 0, 0.34);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 0.45rem 1.25rem rgba(0, 0, 0, 0.26);
  backdrop-filter: blur(8px);
}

.small-card-back-stat-chips span {
  display: grid;
  gap: 0.08rem;
  min-width: 0;
  padding: 0.46rem 0.5rem;
}

.small-card-back-stat-chips small,
.small-card-back-feature > span {
  color: rgba(255, 250, 226, 0.62);
  font-size: 0.58rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.small-card-back-stat-chips strong {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: 0.95rem;
  line-height: 1;
}

.small-card-back-action-panel,
.small-card-back-feature,
.small-card-back-payload {
  display: grid;
  gap: 0.52rem;
  min-width: 0;
  padding: 0.66rem;
}

.small-card-back-action-panel p,
.small-card-back-feature h4,
.small-card-back-payload h4 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: 1.02rem;
  line-height: 1.05;
  margin: 0;
}

.small-card-back-payload > p {
  color: rgba(255, 250, 226, 0.78);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.22;
  margin: 0;
}

.small-card-back-payload {
  background:
    linear-gradient(180deg, rgba(255, 247, 219, 0.18), rgba(255, 247, 219, 0.07)),
    rgba(0, 0, 0, 0.42);
  border: 1px solid color-mix(in srgb, var(--card-accent) 52%, rgba(255, 255, 255, 0.24) 48%);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.08) inset,
    0 0.65rem 1.55rem rgba(0, 0, 0, 0.34),
    0 0 1.2rem color-mix(in srgb, var(--card-accent) 22%, transparent);
  backdrop-filter: blur(9px);
}

.small-card-back-shell--contract .small-card-back-payload {
  gap: 0.48rem;
  padding: 0.58rem;
}

.small-card-back-shell--contract .small-card-back-payload h4 {
  font-size: 0.98rem;
  line-height: 1.05;
}

.small-card-back-shell--contract .small-card-back-rows {
  gap: 0.28rem;
}

.small-card-back-shell--contract .small-card-back-rows > div {
  background: rgba(255, 250, 226, 0.075);
  border-color: rgba(255, 255, 255, 0.09);
  grid-template-columns: minmax(4.8rem, 0.36fr) minmax(0, 1fr);
  padding: 0.34rem 0.42rem;
}

.small-card-back-shell--contract .small-card-back-task-list {
  margin-top: 0.1rem;
}

.small-card-back-quest-actions {
  display: grid;
  gap: 0.42rem;
  min-width: 0;
}

.small-card-back-quest-action {
  background: rgba(255, 250, 226, 0.085);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  gap: 0.28rem;
  min-width: 0;
  padding: 0.44rem;
}

.small-card-back-quest-action > strong {
  color: #fff7db;
  font-size: 0.78rem;
  line-height: 1.1;
}

.small-card-back-quest-action > span {
  color: rgba(255, 250, 226, 0.78);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.2;
}

.small-card-back-quest-action .quest-progress__sigil-form {
  min-width: 0;
  width: 100%;
}

.small-card-back-quest-action .quest-progress__sigil-form small {
  color: rgba(255, 250, 226, 0.78);
}

.small-card-back-payload > span {
  color: color-mix(in srgb, var(--card-accent) 24%, #fff7db 76%);
  font-size: 0.62rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.small-card-back-contract {
  display: grid;
  gap: 0.36rem;
  margin: 0;
}

.small-card-back-contract > div {
  background: rgba(255, 250, 226, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  gap: 0.08rem;
  padding: 0.36rem 0.44rem;
}

.small-card-back-contract dt {
  color: rgba(255, 250, 226, 0.62);
  font-size: 0.58rem;
  font-weight: 900;
  text-transform: uppercase;
}

.small-card-back-contract dd {
  color: #fff7db;
  font-size: 0.84rem;
  font-weight: 900;
  line-height: 1.16;
  margin: 0;
}

.small-card-back-mini-qr {
  background: #fffaf0;
  border: 1px solid rgba(255, 255, 255, 0.58);
  display: inline-grid;
  height: 4rem;
  justify-items: center;
  padding: 0.18rem;
  width: 4rem;
}

.small-card-back-mini-qr svg {
  display: block;
  height: 100%;
  width: 100%;
}

.small-card-back-footer {
  align-items: center;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.4), rgba(255, 247, 219, 0.14), rgba(0, 0, 0, 0.4));
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 0 0 12px 12px;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) 2.65rem minmax(0, 1fr);
  margin-top: 0.05rem;
  min-height: 3.1rem;
  min-width: 0;
  padding: 0.38rem 0.54rem;
}

.small-card-back-footer__type,
.small-card-back-footer__slug {
  color: rgba(255, 250, 226, 0.82);
  font-size: 0.54rem;
  font-weight: 900;
  line-height: 1.05;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.small-card-back-footer__type {
  justify-self: center;
  text-align: center;
}

.small-card-back-footer__slug {
  justify-self: center;
  text-align: center;
}

.small-card-back-footer__qr.card-qr-share-button {
  background: #fffaf0;
  border-color: rgba(255, 255, 255, 0.62);
  height: 2.65rem;
  justify-self: center;
  padding: 0.16rem;
  width: 2.65rem;
}

.small-card-back-footer__qr .card-row-qr-code,
.small-card-back-footer__qr .card-row-qr-code svg {
  height: 100%;
  width: 100%;
}

.small-card-back-action-row,
.small-card-back-contact-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  min-width: 0;
}

.small-card-back-action-row--qr-only {
  justify-content: flex-start;
}

.small-card-back-action,
.small-card-back-contact-row a,
.small-card-back-contact-row b {
  align-items: center;
  background: rgba(255, 247, 219, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.42);
  box-shadow: 0 0.22rem 0.7rem rgba(0, 0, 0, 0.24);
  color: #171314;
  display: inline-grid;
  font-family: var(--body-font);
  font-size: 0.76rem;
  font-weight: 900;
  justify-items: center;
  min-height: 2.15rem;
  padding: 0.5rem 0.62rem;
  text-align: center;
  text-decoration: none;
}

.small-card-back-action--primary {
  background: color-mix(in srgb, var(--card-accent) 62%, #fff7db 38%);
  color: #171314;
}

.small-card-back-action:hover,
.small-card-back-action:focus-visible,
.small-card-back-contact-row a:hover,
.small-card-back-contact-row a:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.36), 0 0 1rem var(--card-glow);
  outline: 0;
}

.small-card-back-offering-controls {
  background: rgba(255, 250, 240, 0.74);
  border: 1px solid rgba(255, 255, 255, 0.24);
  color: #252525;
  display: grid;
  gap: 0.45rem;
  min-width: 0;
  padding: 0.55rem;
}

.small-card-back-offering-controls .state-box {
  background: rgba(28, 22, 38, 0.92);
  border-color: rgba(75, 175, 112, 0.5);
  color: #fff8df;
  font-weight: 800;
  min-height: 2.55rem;
  padding: 0.65rem 0.75rem;
}

.small-card-back-offering-controls .state-box.state-box--error {
  background: rgba(71, 21, 31, 0.94);
  border-color: rgba(255, 125, 125, 0.54);
  color: #fff3ee;
}

.small-card-back-feature--media .module-media,
.small-card-back-payload--media .module-media {
  background: rgba(0, 0, 0, 0.36);
  border: 1px solid rgba(255, 255, 255, 0.14);
  padding: 0.42rem;
}

.small-card-back-feature--media .module-media :is(p, strong, small),
.small-card-back-payload--media .module-media :is(p, strong, small) {
  color: #fff7db;
}

.small-card-back-feature :is(audio, video, iframe),
.small-card-back-payload :is(audio, video, iframe) {
  max-width: 100%;
  width: 100%;
}

.small-card-back-linked-list {
  display: grid;
  gap: 0.38rem;
}

.small-card-back-linked-list button {
  background: rgba(255, 250, 226, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff7db;
  display: grid;
  gap: 0.1rem;
  min-width: 0;
  padding: 0.46rem 0.5rem;
  text-align: left;
}

.small-card-back-linked-list small {
  color: rgba(255, 250, 226, 0.62);
}

.small-card-back-drawer {
  background: rgba(0, 0, 0, 0.24);
  border: 1px solid rgba(255, 255, 255, 0.12);
  min-width: 0;
  backdrop-filter: blur(7px);
}

.small-card-back-drawer > summary {
  align-items: center;
  color: #fff7db;
  cursor: pointer;
  display: flex;
  font-family: var(--body-font);
  font-size: 0.72rem;
  font-weight: 900;
  justify-content: space-between;
  line-height: 1;
  list-style: none;
  padding: 0.48rem 0.55rem;
  text-transform: uppercase;
}

.small-card-back-drawer > summary::-webkit-details-marker {
  display: none;
}

.small-card-back-drawer > summary::after {
  content: "+";
  font-family: var(--display-font);
}

.small-card-back-drawer[open] > summary::after {
  content: "-";
}

.small-card-back-drawer__body {
  display: grid;
  gap: 0.52rem;
  min-width: 0;
  padding: 0 0.55rem 0.58rem;
}

.small-card-back-rows {
  display: grid;
  gap: 0.34rem;
  margin: 0;
}

.small-card-back-rows > div {
  background: rgba(255, 250, 226, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: grid;
  gap: 0.1rem;
  padding: 0.34rem 0.42rem;
}

.small-card-back-rows dt {
  color: rgba(255, 250, 226, 0.62);
  font-size: 0.6rem;
  font-weight: 900;
  text-transform: uppercase;
}

.small-card-back-rows dd {
  color: #fff7db;
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.2;
  margin: 0;
}

.small-card-back-actions,
.small-card-back-media-item,
.small-card-back-task-list {
  display: grid;
  gap: 0.48rem;
  margin: 0;
  min-width: 0;
}

.small-card-back-task-list {
  padding-left: 1.2rem;
}

.small-card-back-task-list li {
  padding-left: 0.15rem;
}

.small-card-back-task-list :is(strong, span, p),
.small-card-back-media-item :is(h4, p) {
  color: #fff7db;
  display: block;
  line-height: 1.18;
  margin: 0;
}

.small-card-back-task-list span,
.small-card-back-task-list p,
.small-card-back-media-item p {
  color: rgba(255, 250, 226, 0.7);
  font-size: 0.78rem;
}

.small-card-back-media-item .module-media {
  background: rgba(255, 250, 240, 0.74);
  border: 1px solid rgba(37, 37, 37, 0.14);
  padding: 0.45rem;
}

.nysa-card-type-avatar .card-container::before,
.nysa-card-type-quest .card-container::before,
.nysa-card-type-place .card-container::before,
.nysa-card-type-location .card-container::before,
.nysa-card-type-event .card-container::before {
  background:
    radial-gradient(ellipse at 50% 17%, rgba(255, 255, 255, 0.32), transparent 22%),
    linear-gradient(90deg, var(--card-edge-line) 0 2px, transparent 2px calc(100% - 2px), var(--card-edge-line) calc(100% - 2px));
}

.nysa-card-type-avatar .frame-art-crop {
  border-radius: 50% 50% 38% 38%;
}

.nysa-card-type-avatar .frame-type-line,
.nysa-card-type-avatar .frame-header,
.nysa-card-type-quest .frame-type-line,
.nysa-card-type-quest .frame-header,
.nysa-card-type-place .frame-type-line,
.nysa-card-type-place .frame-header,
.nysa-card-type-location .frame-type-line,
.nysa-card-type-location .frame-header,
.nysa-card-type-event .frame-type-line,
.nysa-card-type-event .frame-header {
  border-radius: 999px;
}

.nysa-card-type-quest .frame-art-crop {
  flex-basis: 31%;
}

.nysa-card-type-quest .frame-type-line {
  background:
    linear-gradient(0deg, rgba(255, 246, 216, 0.32), rgba(255, 246, 216, 0.32)),
    repeating-linear-gradient(90deg, rgba(255, 221, 149, 0.32) 0 4px, rgba(210, 222, 211, 0.38) 4px 8px),
    #eee0ba;
}

.nysa-card-type-quest .frame-type-line .type {
  font-family: var(--body-font);
  font-size: 0.78rem;
  font-weight: 900;
}

.nysa-card-type-quest .frame-text-box {
  flex: 1.42;
  font-size: 0.94rem;
  gap: 0.38rem;
  justify-content: center;
  padding: 5% 10px;
}

.nysa-card-type-quest.is-card-expanded .frame-art-crop {
  flex-basis: 9rem;
}

.nysa-card-type-quest.is-card-expanded .frame-text-box {
  flex: 0 0 auto;
  gap: 0.55rem;
  overflow: visible;
}

.nysa-card-type-quest .card-kind {
  color: rgba(93, 36, 30, 0.82);
  font-size: 0.64rem;
}

.nysa-card-type-quest .description {
  font-size: 1.02rem;
  line-height: 1.16;
}

.nysa-card-type-quest .quote-text {
  font-family: var(--body-font);
  font-size: 0.82rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.18;
  -webkit-line-clamp: 5;
}

.quest-card-page {
  display: grid;
  gap: 0.35rem;
  min-height: 0;
  overflow: hidden;
}

.quest-card-page__row,
.quest-card-page__hints {
  border: 1px solid rgba(93, 36, 30, 0.18);
  display: grid;
  gap: 0.1rem;
  padding: 0.28rem 0.38rem;
}

.quest-card-page__row > span,
.quest-card-page__hints > span {
  color: rgba(37, 37, 37, 0.62);
  font-family: var(--body-font);
  font-size: 0.56rem;
  font-weight: 900;
  text-transform: uppercase;
}

.quest-card-page__row strong,
.quest-card-page__hints strong {
  font-family: var(--body-font);
  font-size: 0.82rem;
  line-height: 1.08;
}

.quest-card-page__description {
  display: -webkit-box;
  font-family: var(--body-font);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.15;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.quest-card-page__tasks {
  display: grid;
  gap: 0.3rem;
}

.quest-card-page__tasks > span {
  display: grid;
  gap: 0.32rem;
  grid-template-columns: 1.35rem minmax(0, 1fr);
}

.quest-card-page__tasks b {
  border: 1px solid rgba(93, 36, 30, 0.24);
  display: grid;
  font-family: var(--body-font);
  font-size: 0.72rem;
  height: 1.25rem;
  place-items: center;
}

.quest-card-page__tasks strong,
.quest-card-page__tasks small,
.quest-card-page__tasks em {
  display: block;
  font-family: var(--body-font);
  line-height: 1.12;
}

.quest-card-page__tasks strong {
  font-size: 0.82rem;
}

.quest-card-page__tasks small,
.quest-card-page__tasks em {
  color: rgba(37, 37, 37, 0.7);
  font-size: 0.72rem;
  font-style: normal;
}

.quest-card-expand-hint {
  color: rgba(93, 36, 30, 0.72);
  font-family: var(--body-font);
  font-size: 0.58rem;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.nysa-card-type-quest:not(.is-card-expanded) .quest-card-page__tasks > span:nth-child(n + 2),
.nysa-card-type-quest:not(.is-card-expanded) .quest-card-page__hints,
.nysa-card-type-quest:not(.is-card-expanded) .quest-card-page__description {
  display: none;
}

.nysa-card-type-quest.is-card-expanded .quest-card-page {
  overflow: visible;
}

.nysa-card-type-quest.is-card-expanded .quest-card-page__description {
  display: block;
  overflow: visible;
}

.nysa-card-type-quest.is-card-expanded .quest-card-expand-hint {
  display: none;
}

.nysa-card-type-avatar .set-icon {
  border-radius: 42% 58% 48% 52%;
}

.nysa-card-type-place .card-background,
.nysa-card-type-location .card-background {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.18) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255, 255, 255, 0.16) 1px, transparent 1px),
    radial-gradient(circle at 72% 22%, rgba(170, 221, 255, 0.28), transparent 20%),
    linear-gradient(135deg, var(--card-wash-a), rgba(25, 35, 26, 0.94) 48%, var(--card-wash-b)),
    #bbb;
  background-size: 17px 17px, 17px 17px, auto, auto, auto;
}

.nysa-card-type-place .set-icon,
.nysa-card-type-location .set-icon {
  border-radius: 50% 50% 50% 6px;
  font-family: var(--body-font);
}

.nysa-card-type-event .set-icon {
  animation: nysa-event-card-pulse 1800ms ease-in-out infinite;
}

@keyframes nysa-event-card-pulse {
  0%,
  100% {
    box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.18), 0 0 0 0 rgba(var(--card-accent-rgb), 0.36);
  }
  50% {
    box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.18), 0 0 0 6px rgba(var(--card-accent-rgb), 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nysa-card-type-event .set-icon {
    animation: none;
  }
}

.card-direct-link {
  color: var(--muted);
  font-size: 0.78rem;
  margin-top: 0.65rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

.card-direct-link:hover {
  color: var(--accent);
}

.card-qr-share-button {
  align-items: center;
  background:
    radial-gradient(circle at 35% 20%, rgba(255, 255, 255, 0.36), transparent 38%),
    #fffaf0;
  border: 2px solid #171314;
  border-radius: 999px;
  bottom: 2.25rem;
  box-shadow: 0 0.22rem 0.75rem rgba(0, 0, 0, 0.42);
  color: #171314;
  display: inline-grid;
  font-family: var(--display-font);
  font-size: 0.62rem;
  font-weight: 900;
  height: 1.15rem;
  min-height: 0;
  padding: 0;
  place-items: center;
  position: static;
  text-transform: uppercase;
  transform: none;
  width: 1.15rem;
  z-index: 4;
}

.card-qr-icon {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(2, 0.28rem);
  grid-template-rows: repeat(2, 0.28rem);
}

.card-qr-icon i {
  background: #171314;
  display: block;
}

.card-qr-share-button--dex {
  border-radius: 0;
  height: 1.45rem;
  width: 1.45rem;
}

.card-qr-share-button--dex .card-row-qr-code {
  align-items: center;
  display: grid;
  height: 1.32rem;
  justify-items: center;
  overflow: hidden;
  width: 1.32rem;
}

.card-qr-share-button--dex .card-row-qr-code svg {
  display: block;
  height: 100%;
  width: 100%;
}

.small-card-back-footer__qr.card-qr-share-button,
.small-card-back-footer__qr.card-qr-share-button--dex {
  border-radius: 0;
  bottom: auto;
  height: 2.65rem;
  padding: 0.16rem;
  width: 2.65rem;
}

.small-card-back-footer__qr.card-qr-share-button--dex .card-row-qr-code {
  height: 100%;
  width: 100%;
}

.card-qr-share-button:hover,
.card-qr-share-button:focus-visible {
  background: #ffffff;
  border-color: var(--card-accent);
  box-shadow: 0 0 0 2px rgba(var(--card-accent-rgb), 0.32), 0 0.32rem 0.9rem rgba(0, 0, 0, 0.48);
}

.inspector-card-summary .nysa-card {
  --small-card-width: 100%;
  align-self: stretch;
  filter:
    drop-shadow(0 0 0.5rem rgba(255, 255, 255, 0.28))
    drop-shadow(0 0 1.45rem rgba(255, 221, 149, 0.26))
    drop-shadow(0 0 2.5rem rgba(197, 167, 255, 0.18));
  height: 100%;
  margin: 0 auto;
  max-height: 100%;
  width: 100%;
}

.inspector-card-summary .nysa-card .card-flip-stage,
.nysa-card.nysa-card--inspector .card-flip-stage,
.inspector-card-summary .nysa-card .nysa-card__front,
.nysa-card.nysa-card--inspector .nysa-card__front,
.inspector-card-summary .nysa-card .card-container,
.nysa-card.nysa-card--inspector .card-container {
  height: 100%;
  max-height: 100%;
  width: 100%;
}

.inspector-card-summary .nysa-card .card-container,
.nysa-card.nysa-card--inspector .card-container {
  aspect-ratio: 5 / 7;
  border-radius: 0;
}

.inspector-card-summary .nysa-card .card-background,
.nysa-card.nysa-card--inspector .card-background {
  inset: 0.4% 0.6% 0.8%;
}

.inspector-card-summary .nysa-card .card-frame,
.nysa-card.nysa-card--inspector .card-frame {
  left: 0.5%;
  top: 0.25%;
  width: 99%;
}

.inspector-card-summary .nysa-card:not(.is-card-flipped) .nysa-card__front .frame-text-box,
.nysa-card.nysa-card--inspector:not(.is-card-flipped) .nysa-card__front .frame-text-box {
  max-height: none;
}

.inspector-detail {
  display: grid;
  gap: clamp(0.85rem, 2vw, 1.15rem);
  justify-items: stretch;
}

.inspector-detail--card-shell {
  align-items: stretch;
  gap: 0;
  height: 100%;
  min-height: 0;
}

.inspector-character-sheet {
  background:
    linear-gradient(180deg, rgba(255, 221, 149, 0.085), transparent 34%),
    rgba(7, 7, 9, 0.94);
  border: 1px solid rgba(255, 221, 149, 0.32);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.035) inset,
    0 0 1.1rem rgba(197, 167, 255, 0.12);
  color: #f5f1e8;
  display: grid;
  gap: 0.85rem;
  padding: clamp(0.78rem, 2vw, 1rem);
}

.inspector-character-sheet__head {
  border-bottom: 1px solid rgba(255, 221, 149, 0.18);
  display: grid;
  gap: 0.28rem;
  padding-bottom: 0.7rem;
}

.inspector-character-sheet__head h3 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: clamp(1.1rem, 3.5vw, 1.55rem);
  line-height: 1.05;
  margin: 0;
}

.inspector-character-sheet__head p:last-child {
  color: #d8d1c1;
  margin: 0;
}

.inspector-stat-grid {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.inspector-stat-grid > div {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.09);
  display: grid;
  gap: 0.18rem;
  min-width: 0;
  padding: 0.5rem 0.58rem;
}

.inspector-stat-grid dt {
  color: var(--accent);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.inspector-stat-grid dd {
  color: #f8f4eb;
  font-size: 0.92rem;
  font-weight: 750;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.inspector-context-card,
.inspector-card-data {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.inspector-context-card {
  border: 1px solid var(--line-soft);
  background:
    linear-gradient(180deg, rgba(197, 167, 255, 0.08), transparent 58%),
    rgba(0, 0, 0, 0.48);
  padding: 0.85rem;
}

.inspector-context-card h3 {
  margin: 0;
}

.inspector-context-card p {
  overflow-wrap: anywhere;
}

.inspector-edit-panel {
  border: 1px solid var(--line-soft);
  background: rgba(0, 0, 0, 0.5);
  display: grid;
  gap: 0.85rem;
  min-width: 0;
  padding: 0.85rem;
}

.inspector-edit-panel > header,
.inspector-art-panel > header {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-width: 0;
}

.inspector-edit-panel h3,
.inspector-art-panel h4 {
  margin: 0;
}

.inspector-edit-grid {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.inspector-edit-row {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}

.inspector-edit-row span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.inspector-edit-row input,
.inspector-edit-row select,
.inspector-edit-row textarea {
  min-width: 0;
  width: 100%;
}

.inspector-edit-row textarea {
  resize: vertical;
}

.inspector-edit-row input.is-saving,
.inspector-edit-row select.is-saving,
.inspector-edit-row textarea.is-saving {
  border-color: var(--accent);
}

.inspector-edit-row input.is-saved,
.inspector-edit-row select.is-saved,
.inspector-edit-row textarea.is-saved {
  border-color: var(--accent-2);
}

.inspector-edit-row input.is-error,
.inspector-edit-row select.is-error,
.inspector-edit-row textarea.is-error {
  border-color: var(--danger);
}

.inspector-art-panel {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.75rem;
  padding-top: 0.8rem;
}

.inspector-art-layout {
  align-items: start;
  display: grid;
  gap: 0.8rem;
  grid-template-columns: minmax(13rem, 0.58fr) minmax(0, 1fr);
}

.inspector-art-previews {
  display: grid;
  gap: 0.55rem;
  min-width: 0;
}

.inspector-art-preview {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)),
    rgba(0, 0, 0, 0.38);
  border: 1px solid var(--line-soft);
  display: grid;
  gap: 0.35rem;
  margin: 0;
  min-width: 0;
  padding: 0.45rem;
}

.inspector-art-preview figcaption {
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.inspector-art-preview-crop {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), transparent 40%),
    rgba(255, 255, 255, 0.035);
  border: 1px solid color-mix(in srgb, var(--card-accent, var(--accent)) 58%, rgba(255, 255, 255, 0.18));
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.72),
    inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.inspector-art-preview-crop::after {
  border: 2px solid rgba(255, 232, 162, 0.82);
  box-shadow:
    inset 0 0 0 1px rgba(0, 0, 0, 0.7),
    0 0 0 1px rgba(0, 0, 0, 0.72);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 2;
}

.inspector-art-preview--inspector .inspector-art-preview-crop,
.inspector-art-preview--smallcard .inspector-art-preview-crop {
  aspect-ratio: 1.62 / 1;
}

.inspector-art-preview--dex-list .inspector-art-preview-crop {
  aspect-ratio: 1 / 1;
}

.inspector-art-preview.nysa-card-type-avatar .inspector-art-preview-crop {
  border-radius: 50% 50% 38% 38%;
}

.inspector-art-preview.nysa-card-type-quest.inspector-art-preview--inspector .inspector-art-preview-crop,
.inspector-art-preview.nysa-card-type-quest.inspector-art-preview--smallcard .inspector-art-preview-crop {
  aspect-ratio: 1.95 / 1;
}

.inspector-art-preview-crop img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  transform: scale(var(--card-art-zoom, 1));
  transform-origin: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  width: 100%;
}

.inspector-art-controls {
  display: grid;
  gap: 0.55rem;
  min-width: 0;
}

.curated-art-thumb {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--line-soft);
  overflow: hidden;
  position: relative;
}

.curated-art-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  transform: scale(var(--card-art-zoom, 1));
  transform-origin: var(--card-art-focus-x, 50%) var(--card-art-focus-y, 50%);
  width: 100%;
}

.curated-art-picker-modal[hidden] {
  display: none;
}

.curated-art-picker-modal {
  inset: 0;
  position: fixed;
  z-index: 9800;
}

.curated-art-picker-backdrop {
  background: rgba(0, 0, 0, 0.72);
  inset: 0;
  position: absolute;
}

.curated-art-picker-panel {
  background: var(--surface);
  border: 1px solid var(--line);
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.58);
  display: grid;
  gap: 0.8rem;
  left: 50%;
  max-height: min(82vh, 48rem);
  max-width: min(58rem, calc(100vw - 1.5rem));
  min-width: min(42rem, calc(100vw - 1.5rem));
  overflow: hidden;
  padding: 0.85rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.curated-art-picker-panel > header,
.curated-art-picker-tools {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-width: 0;
}

.curated-art-picker-panel h3 {
  margin: 0;
}

.curated-art-picker-tools input {
  min-width: 0;
  width: min(24rem, 62vw);
}

.curated-art-picker-tools small {
  color: var(--muted);
}

.curated-art-picker-grid {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr));
  min-height: 0;
  overflow: auto;
  padding-right: 0.2rem;
}

.curated-art-picker-tile {
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid var(--line-soft);
  display: grid;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.5rem;
}

.curated-art-picker-tile.is-selected {
  border-color: var(--accent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 55%, transparent);
}

.curated-art-picker-tile .curated-art-thumb {
  aspect-ratio: 1.62 / 1;
}

.curated-art-picker-tile__body {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.curated-art-picker-tile__body strong,
.curated-art-picker-tile__body small,
.curated-art-picker-tile__body span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.curated-art-picker-tile__body small,
.curated-art-picker-tile__body span {
  color: var(--muted);
  font-size: 0.74rem;
}

.curated-art-admin-form {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.curated-art-admin-form label,
.curated-art-admin-card__form label {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}

.curated-art-admin-form label span,
.curated-art-admin-card__form label span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.curated-art-admin-grid {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: repeat(auto-fill, minmax(22rem, 1fr));
}

.curated-art-admin-card {
  align-items: start;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(8rem, 0.42fr) minmax(0, 1fr);
}

.curated-art-admin-card__thumb {
  aspect-ratio: 1.62 / 1;
  width: 100%;
}

.curated-art-admin-card__form {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
}

@media (max-width: 760px) {
  .inspector-edit-grid,
  .inspector-art-layout,
  .curated-art-admin-form,
  .curated-art-admin-card,
  .curated-art-admin-card__form {
    grid-template-columns: 1fr;
  }

  .curated-art-picker-panel {
    max-height: calc(100vh - 1rem);
    min-width: calc(100vw - 1rem);
  }

  .curated-art-picker-panel > header,
  .curated-art-picker-tools {
    align-items: stretch;
    display: grid;
  }

  .curated-art-picker-tools input {
    width: 100%;
  }
}

.offering-inspector-contract {
  align-items: start;
  display: grid;
  gap: 0.9rem;
  grid-template-columns: minmax(7.25rem, 0.42fr) minmax(0, 1fr);
  min-width: 0;
}

.offering-inspector-contract__body {
  display: grid;
  gap: 0.7rem;
  min-width: 0;
}

.offering-inspector-qr {
  align-items: center;
  background: #fffaf0;
  border: 1px solid rgba(245, 222, 145, 0.72);
  box-shadow: 0 0.4rem 1.1rem rgba(0, 0, 0, 0.4);
  display: grid;
  justify-items: center;
  min-height: 7.25rem;
  padding: 0.45rem;
}

.offering-inspector-qr svg {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.offering-inspector-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.card-type-metadata {
  background: rgba(0, 0, 0, 0.38);
  border: 1px solid rgba(245, 222, 145, 0.24);
  display: grid;
  gap: 0.7rem;
  min-width: 0;
  padding: 0.72rem;
}

.card-type-metadata h3,
.card-type-metadata p {
  margin: 0;
}

.card-type-metadata__head {
  align-items: end;
  display: flex;
  gap: 0.65rem;
  justify-content: space-between;
  min-width: 0;
}

.card-type-metadata__head small {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 750;
  white-space: nowrap;
}

.card-metadata-grid {
  align-items: start;
  display: grid;
  gap: 0.72rem;
  grid-template-columns: minmax(6.25rem, 0.32fr) minmax(0, 1fr);
  min-width: 0;
}

.card-metadata-qr {
  align-items: center;
  background: #fffaf0;
  border: 1px solid rgba(245, 222, 145, 0.72);
  display: grid;
  justify-items: center;
  min-height: 6.25rem;
  padding: 0.38rem;
}

.card-metadata-qr svg {
  display: block;
  max-width: 100%;
  width: 100%;
}

.forged-deck-list {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.forged-deck-row {
  align-items: center;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.09);
  display: grid;
  gap: 0.45rem;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 0.45rem;
}

.forged-deck-row button {
  background: transparent;
  border: 0;
  color: inherit;
  display: grid;
  gap: 0.12rem;
  min-width: 0;
  padding: 0;
  text-align: left;
}

.forged-deck-row strong,
.forged-deck-row span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.forged-deck-row span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.forged-deck-row a {
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 900;
  text-decoration: none;
  text-transform: uppercase;
}

.compendium-detail-loading {
  background: rgba(245, 222, 145, 0.12);
  border: 1px solid rgba(245, 222, 145, 0.28);
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 800;
  margin: 0;
  padding: 0.45rem 0.55rem;
}

.inspector-card-data {
  border: 1px solid var(--line);
  background: rgba(0, 0, 0, 0.58);
}

.inspector-card-data summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 0.55rem;
  justify-content: space-between;
  list-style: none;
  min-width: 0;
  padding: 0.7rem 0.8rem;
  text-transform: uppercase;
}

.inspector-card-data summary::-webkit-details-marker {
  display: none;
}

.inspector-card-data summary span,
.inspector-card-data summary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inspector-card-data summary span {
  color: var(--text);
  font-family: var(--display-font);
  font-weight: 900;
}

.inspector-card-data summary small {
  color: var(--muted);
  font-size: 0.72rem;
}

.inspector-card-data[open] {
  padding: 0 0.8rem 0.8rem;
}

.inspector-card-data[open] summary {
  margin-inline: -0.8rem;
}

.quest-inspector-scroll {
  background:
    linear-gradient(90deg, rgba(76, 45, 16, 0.1), transparent 18%, transparent 82%, rgba(76, 45, 16, 0.1)),
    linear-gradient(180deg, rgba(255, 245, 198, 0.96), rgba(222, 193, 137, 0.94));
  border: 1px solid rgba(94, 58, 24, 0.45);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.35),
    inset 0 0 2.25rem rgba(94, 58, 24, 0.24),
    0 0.75rem 1.25rem rgba(0, 0, 0, 0.24);
  color: #2b1a0d;
  display: grid;
  gap: 1rem;
  min-width: 0;
  padding: 1rem;
}

.quest-inspector-scroll .eyebrow,
.quest-inspector-scroll .muted {
  color: rgba(60, 36, 16, 0.72);
}

.quest-inspector-scroll h3,
.quest-inspector-scroll h4 {
  color: #261508;
  font-family: var(--display-font);
  margin: 0;
}

.quest-inspector-scroll h3 {
  font-size: 1.25rem;
}

.quest-inspector-scroll p,
.quest-inspector-scroll small,
.quest-inspector-scroll li,
.quest-inspector-scroll dd {
  overflow-wrap: anywhere;
}

.quest-inspector-scroll__head {
  display: grid;
  gap: 0.45rem;
}

.quest-inspector-contract {
  align-items: start;
  display: grid;
  gap: 0.9rem;
  grid-template-columns: minmax(7.25rem, 0.36fr) minmax(0, 1fr);
  min-width: 0;
}

.quest-inspector-qr {
  align-items: center;
  background: #fffaf0;
  border: 1px solid rgba(94, 58, 24, 0.45);
  box-shadow: 0 0.4rem 1rem rgba(94, 58, 24, 0.22);
  display: grid;
  justify-items: center;
  min-height: 7.25rem;
  padding: 0.45rem;
}

.quest-inspector-qr svg {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.quest-inspector-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quest-inspector-reward {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quest-inspector-reward div {
  border: 1px solid rgba(94, 58, 24, 0.24);
  background: rgba(255, 255, 255, 0.2);
  padding: 0.55rem;
}

.quest-inspector-reward dt {
  color: rgba(60, 36, 16, 0.72);
  font-size: 0.7rem;
  text-transform: uppercase;
}

.quest-inspector-reward dd {
  font-weight: 900;
  margin: 0.2rem 0 0;
}

.quest-inspector-tasks,
.quest-inspector-hints {
  display: grid;
  gap: 0.6rem;
}

.quest-inspector-tasks ol,
.quest-inspector-hints ul {
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
}

.quest-inspector-tasks li {
  align-items: start;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 2.2rem minmax(0, 1fr);
}

.quest-inspector-tasks li > span {
  border: 1px solid rgba(94, 58, 24, 0.35);
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 900;
  justify-content: center;
  min-height: 1.7rem;
  padding: 0.25rem;
  text-transform: uppercase;
}

.quest-inspector-tasks li strong,
.quest-inspector-tasks li small {
  display: block;
}

.quest-inspector-tasks li small {
  color: rgba(60, 36, 16, 0.72);
  margin-top: 0.15rem;
}

.quest-inspector-tasks .quest-target-tag {
  border-color: rgba(94, 58, 24, 0.35);
  color: #2b1a0d;
}

.quest-inspector-hints li {
  list-style: none;
  border-left: 0.2rem solid rgba(94, 58, 24, 0.35);
  padding-left: 0.6rem;
}

.inspector-action-preview {
  align-items: center;
  border: 1px dashed var(--line);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 0.85rem;
}

.inspector-action-preview strong,
.inspector-action-preview small,
.inspector-action-preview .muted {
  display: block;
  overflow-wrap: anywhere;
}

.inspector-action-preview small,
.inspector-action-preview .muted {
  color: var(--muted);
}

.inspector-action-preview__status {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--muted);
  display: inline-block;
  font-size: 0.82rem;
  margin-top: 0.55rem;
  max-width: 100%;
  overflow-wrap: anywhere;
  padding: 0.35rem 0.5rem;
}

.inspector-action-preview__status[data-deck-action-preview-status="ready_disabled"] {
  border-color: var(--accent);
  color: var(--text);
}

.inspector-action-preview__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.inspector-action-preview__target {
  display: grid;
  gap: 0.3rem;
  margin-top: 0.65rem;
  max-width: 18rem;
}

.inspector-action-preview__target span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.inspector-action-preview__target select {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.35rem;
  padding: 0.45rem 0.55rem;
  width: 100%;
}

.inspector-action-preview__buttons button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.inspector-action-preview__admin {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.55rem;
  grid-column: 1 / -1;
  padding-top: 0.75rem;
}

.inspector-action-preview__admin label {
  display: grid;
  gap: 0.3rem;
  max-width: 22rem;
}

.inspector-action-preview__admin label span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.inspector-action-preview__admin input {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.35rem;
  padding: 0.45rem 0.55rem;
}

.inspector-action-preview__admin pre {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--muted);
  margin: 0;
  max-height: 14rem;
  overflow: auto;
  padding: 0.65rem;
  white-space: pre-wrap;
}

.card-module {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.65rem;
  padding-top: 0.85rem;
}

.card-module h3 {
  font-size: 0.9rem;
  margin: 0 0 0.25rem;
}

.journal-inspector-signal {
  display: grid;
  gap: 0.65rem;
}

.journal-inspector-signal .signal-meter {
  margin-top: 0.1rem;
}

.module-media {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.module-media--request {
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 0.75rem;
  padding: 0.75rem;
  overflow-wrap: anywhere;
}

.module-media-request {
  justify-self: start;
  min-height: 2.75rem;
}

.module-media-request-status {
  margin: 0;
  max-width: 100%;
}

.shell-media-player {
  position: fixed;
  bottom: var(--shell-bottom-rail-height, 4.1rem);
  left: 0;
  right: 0;
  z-index: 22;
  display: grid;
  gap: 0.65rem;
  margin: 0;
  max-height: calc(100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-rail-height, 4.1rem));
  overflow: auto;
  padding: 0.75rem;
  border: 1px solid rgba(154, 229, 211, 0.42);
  border-radius: 0;
  background: rgba(8, 18, 27, 0.97);
  box-shadow: 0 -0.6rem 2rem rgba(0, 0, 0, 0.34);
  color: var(--text, #f4f8f7);
}

.shell-media-player[data-player-state="idle"] {
  display: none;
}

.shell-media-player__summary {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr) auto;
  gap: 0.7rem;
  align-items: center;
}

.shell-media-player__art {
  width: 3rem;
  aspect-ratio: 1;
  border-radius: 0.7rem;
  background: linear-gradient(145deg, rgba(77, 197, 170, 0.3), rgba(93, 102, 190, 0.22)) center / cover;
}

.shell-media-player__copy {
  min-width: 0;
  display: grid;
  gap: 0.08rem;
}

.shell-media-player__copy :is(strong, span, small) {
  overflow-wrap: anywhere;
}

.shell-media-player__copy small,
.shell-media-player__copy span {
  color: var(--muted, #b5c4c8);
}

.shell-media-player__body {
  display: grid;
  grid-template-columns: minmax(13rem, 0.55fr) minmax(18rem, 1fr);
  gap: 0.75rem;
  align-items: center;
}

.shell-media-player__transport:empty {
  display: none;
}

.shell-media-player__transport :is(audio, video, iframe) {
  display: block;
  width: 100%;
  max-width: 100%;
  border: 0;
  border-radius: 0.7rem;
  background: #05080b;
}

.shell-media-player__transport audio {
  min-height: 3rem;
}

.shell-media-player__transport video {
  max-height: 13rem;
}

.shell-media-player__transport iframe {
  min-height: 7.5rem;
}

.shell-media-player__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  align-items: end;
}

.shell-media-player__controls :is(button, a, input) {
  min-height: 2.75rem;
}

.shell-media-player__controls :is(button, a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.shell-media-player__seek {
  flex: 1 1 15rem;
}

.shell-media-player__volume {
  flex: 0 1 8rem;
}

.shell-media-player__seek,
.shell-media-player__volume {
  display: grid;
  gap: 0.2rem;
  min-width: 0;
}

.shell-media-player__seek span,
.shell-media-player__volume span {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.78rem;
  color: var(--muted, #b5c4c8);
}

@media (max-width: 760px) {
  .shell-media-player {
    padding: 0.6rem;
  }

  .shell-media-player__body {
    grid-template-columns: minmax(0, 1fr);
  }

  .shell-media-player__controls :is(button, a) {
    flex: 1 1 5.5rem;
  }

  .shell-media-player__seek {
    flex-basis: 100%;
    order: -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .shell-media-player,
  .shell-media-player * {
    transition: none !important;
    animation: none !important;
  }
}

.module-media audio,
.module-media video,
.soundcloud-embed,
.media-embed {
  display: block;
  max-width: 100%;
  width: 100%;
}

.module-media video {
  background: #050505;
  max-height: 18rem;
}

.soundcloud-embed {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  height: 10.5rem;
}

.media-embed {
  aspect-ratio: 16 / 9;
  background: #050505;
  border: 1px solid var(--line);
  min-height: 14rem;
}

.module-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-width: 0;
}

.module-action {
  align-items: center;
  border: 1px solid var(--line);
  color: var(--text);
  display: inline-flex;
  min-height: 2.35rem;
  padding: 0.45rem 0.7rem;
  text-decoration: none;
}

.module-action--text {
  color: var(--muted);
}

.deck-surface,
.deck-list {
  display: grid;
  gap: 1rem;
}

.deck-toolbar {
  align-items: end;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(14rem, 1fr) minmax(9rem, 12rem) minmax(8rem, 10rem) minmax(10rem, 16rem);
}

.deck-diagnostics {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.diagnostic-pill {
  border: 1px solid var(--line);
  color: var(--muted);
  display: inline-flex;
  gap: 0.4rem;
  padding: 0.4rem 0.6rem;
}

.diagnostic-pill strong {
  color: var(--text);
}

.deck-state-pill {
  border: 1px solid var(--line);
  color: var(--muted);
  display: inline-flex;
  font-size: 0.72rem;
  line-height: 1;
  margin-top: 0.45rem;
  padding: 0.3rem 0.45rem;
  text-transform: uppercase;
}

.deck-state-pill--canonical {
  border-color: var(--accent-2);
  color: var(--accent-2);
}

.deck-state-pill--legacy {
  border-color: var(--accent);
  color: var(--accent);
}

.deck-panel {
  display: grid;
  gap: 1rem;
}

.deck-panel--empty {
  border-style: dashed;
}

.deck-list--dex {
  grid-template-columns: repeat(auto-fill, minmax(min(13rem, 100%), 1fr));
}

.deck-dex-card {
  aspect-ratio: 3 / 4;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), transparent 46%),
    var(--surface-strong);
  border: 1px solid var(--line);
  border-radius: 0;
  box-shadow:
    0.34rem 0.34rem 0 0 color-mix(in srgb, var(--surface-strong) 72%, #000),
    0.7rem 0.7rem 0 0 color-mix(in srgb, var(--surface) 70%, #000),
    0 0.7rem 1.2rem rgba(0, 0, 0, 0.22);
  color: var(--text);
  display: grid;
  gap: 0.45rem;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  min-width: 0;
  padding: 0.8rem;
  position: relative;
  text-align: left;
}

.deck-dex-card:hover {
  border-color: var(--accent);
}

.deck-dex-card__type,
.deck-dex-card__count {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.deck-dex-card strong {
  font-family: var(--display-font);
  font-size: clamp(1.15rem, 2.2vw, 1.55rem);
  letter-spacing: 0;
  line-height: 1.02;
}

.deck-dex-card__abstract {
  color: var(--muted);
  display: -webkit-box;
  font-size: 0.86rem;
  line-height: 1.25;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.deck-open-header {
  align-items: start;
  background: var(--surface);
  border: 1px solid var(--line);
  display: flex;
  gap: 1rem;
  grid-column: 1 / -1;
  justify-content: space-between;
  padding: 0.85rem;
}

.deck-open-header h2 {
  margin-bottom: 0.3rem;
}

.deck-open-header__actions {
  align-items: end;
  display: grid;
  gap: 0.5rem;
  justify-items: end;
}

.deck-open-header__actions button {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2rem;
  padding: 0.35rem 0.6rem;
}

.deck-open-header__actions button:hover {
  border-color: var(--accent);
}

.deck-panel header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.deck-panel header h2 {
  margin-bottom: 0.25rem;
}

.deck-panel__header-actions {
  align-items: end;
  display: grid;
  gap: 0.45rem;
  justify-items: end;
}

.deck-panel__header-actions button {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2rem;
  padding: 0.35rem 0.55rem;
}

.deck-panel__header-actions button:hover {
  border-color: var(--accent);
}

.deck-card-strip {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(auto-fill, minmax(min(11rem, 100%), 1fr));
}

.mini-card-wrap {
  border: 1px solid var(--line);
  display: grid;
  min-width: 0;
  overflow: hidden;
}

.mini-card-wrap:hover {
  border-color: var(--accent);
}

.mini-card {
  align-items: center;
  background: transparent;
  border: 0;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: 3.25rem minmax(0, 1fr);
  min-width: 0;
  padding: 0.45rem;
  text-align: left;
}

.mini-card__art {
  aspect-ratio: 1;
  background: var(--surface-strong);
  background-position: center;
  background-size: cover;
  display: block;
}

.mini-card span:last-child {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.mini-card strong,
.mini-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mini-card small {
  color: var(--muted);
}

.mini-card-link,
.journal-card-link {
  border-top: 1px solid var(--line);
  color: var(--muted);
  display: block;
  font-size: 0.82rem;
  padding: 0.45rem 0.6rem;
  text-decoration: none;
}

.mini-card-link:hover,
.journal-card-link:hover {
  color: var(--accent);
}

.radio-surface {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.radio-player-panel {
  align-items: center;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(8rem, 14rem) minmax(0, 1fr);
}

.radio-now-art {
  aspect-ratio: 1;
  background: var(--surface-strong);
  background-position: center;
  background-size: cover;
  border: 1px solid var(--line);
}

.radio-now-copy {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
}

.radio-now-copy audio,
.radio-now-copy video,
.radio-now-copy iframe {
  width: 100%;
}

.radio-diagnostics {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.radio-toolbar {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(14rem, 1fr) minmax(9rem, 13rem) minmax(9rem, 13rem) auto;
}

.radio-toolbar label {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
}

.radio-toolbar span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.radio-toolbar input,
.radio-toolbar select {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.4rem;
  padding: 0.45rem 0.55rem;
  width: 100%;
}

.radio-filter-count {
  border: 1px solid var(--line);
  color: var(--muted);
  min-height: 2.4rem;
  padding: 0.55rem 0.7rem;
  white-space: nowrap;
}

.radio-breakdown {
  align-items: center;
  border: 1px solid var(--line);
  color: var(--muted);
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.4rem 0.6rem;
}

.radio-breakdown strong {
  color: var(--text);
}

.radio-breakdown span {
  border-left: 1px solid var(--line);
  padding-left: 0.4rem;
}

.radio-track-list {
  display: grid;
  gap: 0.75rem;
}

.radio-track {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.radio-track__play {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 4rem minmax(0, 1fr);
  min-width: 0;
  padding: 0.45rem;
  text-align: left;
}

.radio-track__art {
  aspect-ratio: 1;
  background: var(--surface-strong);
  background-position: center;
  background-size: cover;
  display: block;
}

.radio-track__play span:last-child,
.radio-track__actions {
  min-width: 0;
}

.radio-track__play strong,
.radio-track__play small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.radio-track__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.inspector-card-summary {
  align-items: stretch;
  display: grid;
  justify-items: stretch;
  min-height: 0;
  padding: 0;
  width: 100%;
}

.journal-surface {
  display: grid;
  gap: 1rem;
}

.journal-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.journal-tabs button.is-active {
  border-color: var(--accent);
  color: var(--accent);
}

.journal-grid {
  display: grid;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.journal-panel {
  display: grid;
  gap: 1rem;
  align-content: start;
  min-width: 0;
}

.journal-signal-list,
.journal-readout-list {
  display: grid;
  gap: 0.7rem;
}

.journal-readout-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.journal-readout-group {
  border-color: var(--line);
}

.collapsible-group {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.55rem;
  padding: 0.6rem;
}

.collapsible-group__toggle {
  align-items: center;
  background: transparent;
  border: 0;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-width: 0;
  padding: 0;
  text-align: left;
  width: 100%;
}

.collapsible-group__toggle::after {
  color: var(--muted);
  content: "-";
  flex: 0 0 auto;
  font-weight: 700;
}

.collapsible-group[data-collapsed="true"] .collapsible-group__toggle::after {
  content: "+";
}

.collapsible-group__toggle span {
  align-items: center;
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.collapsible-group__toggle strong {
  overflow-wrap: anywhere;
}

.collapsible-group__toggle small,
.collapsible-group__toggle b {
  color: var(--muted);
  font-size: 0.78rem;
}

.collapsible-group__toggle b {
  font-weight: 600;
  white-space: nowrap;
}

.collapsible-group__body {
  display: grid;
  gap: 0.45rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.journal-tools {
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) minmax(10rem, 14rem);
}

.journal-tools input,
.journal-tools select {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.4rem;
  padding: 0.45rem 0.55rem;
  width: 100%;
}

.shell-action-rail {
  align-items: center;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent 60%),
    color-mix(in srgb, var(--glass-strong) 92%, transparent);
  border: 1px solid var(--line-soft);
  border-top: 0;
  box-shadow: 0 0.45rem 1rem rgba(0, 0, 0, 0.22);
  display: flex;
  gap: 0.45rem;
  min-width: 0;
  overflow-x: auto;
  padding: 0.42rem 0.5rem;
  position: sticky;
  scrollbar-width: none;
  top: var(--route-sticky-top, 3.05rem);
  z-index: 7;
}

.shell-action-rail::-webkit-scrollbar {
  display: none;
}

.shell-action-rail__group {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  gap: 0.45rem;
  min-width: 0;
}

.shell-action-rail__group[hidden] {
  display: none;
}

.shell-action-rail__group.journal-tools {
  box-shadow: none;
  padding: 0;
  position: static;
  top: auto;
}

.shell-action-rail button,
.shell-action-rail .button {
  flex: 0 0 auto;
  min-height: 2.1rem;
  padding: 0.38rem 0.55rem;
  white-space: nowrap;
}

.shell-help-button {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-family: var(--display-font);
  font-weight: 900;
  justify-content: center;
  min-width: 2.1rem;
  padding-inline: 0;
  text-transform: lowercase;
}

.shell-action-rail input,
.shell-action-rail select {
  min-height: 2.1rem;
}

.quest-surface {
  display: grid;
  gap: 1rem;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 100%;
}

[data-quest-admin-page].quest-surface {
  gap: 0;
}

.quest-admin-action-rail {
  margin-bottom: 0.75rem;
}

.quest-admin-action-rail .shell-action-rail__group {
  flex-wrap: wrap;
}

.quest-admin-action-rail button,
.quest-admin-action-rail .button {
  white-space: normal;
}

.quest-panel-header {
  align-items: start;
  border-bottom: 1px solid var(--line-soft);
  display: grid;
  gap: 0.85rem 1rem;
  grid-template-columns: minmax(0, 1fr);
  padding-bottom: 0.75rem;
}

.quest-panel-header--tools-only {
  border-bottom: 0;
  grid-template-columns: minmax(0, 1fr);
  padding-bottom: 0;
}

.quest-tools {
  align-self: start;
}

.quest-panel-header--tools-only .quest-tools {
  width: 100%;
}

.quest-admin-rail {
  position: sticky;
  top: var(--shell-top-height, 0);
  z-index: 8;
}

.quest-admin-sticky-notice {
  border-left: 0.3rem solid var(--accent-2);
  position: sticky;
  top: 0;
  z-index: 9;
}

[data-shell-dismissible-notice="true"] {
  cursor: pointer;
}

[data-shell-dismissible-notice="true"]:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.quest-admin-sticky-notice--success {
  background:
    linear-gradient(180deg, rgba(69, 200, 159, 0.14), transparent 80%),
    color-mix(in srgb, var(--surface-strong) 88%, transparent);
  border-color: color-mix(in srgb, var(--accent-2) 70%, var(--line));
  box-shadow: 0 0.8rem 1.4rem rgba(0, 0, 0, 0.32), 0 0 1.5rem rgba(69, 200, 159, 0.08);
}

.quest-admin-sticky-notice h3 {
  font-family: var(--display-font);
  letter-spacing: 0;
  margin: 0 0 0.65rem;
}

.quest-admin-notice-grid {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.quest-admin-notice-grid div {
  min-width: 0;
}

.quest-admin-notice-grid dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.quest-admin-notice-grid dd {
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}

.quest-admin-shell {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.quest-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1rem;
}

.shell-journal-layout,
.quest-journal-layout {
  background:
    radial-gradient(circle at 42% 70%, rgba(216, 184, 90, 0.08), transparent 18rem),
    linear-gradient(90deg, rgba(31, 22, 16, 0.74), rgba(7, 8, 8, 0.84));
  border: 1px solid var(--line-soft);
  display: grid;
  gap: 0;
  grid-template-columns: minmax(15rem, 0.72fr) minmax(0, 1.35fr);
  min-height: min(34rem, calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height) - 9rem));
  overflow: hidden;
}

[data-compendium] .compendium-journal-layout {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height) - 9.6rem);
  min-height: 28rem;
  overflow-anchor: none;
}

.shell-journal-index,
.shell-journal-detail,
.quest-journal-index,
.quest-journal-detail {
  min-width: 0;
  min-height: 0;
}

.shell-journal-index,
.quest-journal-index {
  border-right: 1px solid color-mix(in srgb, var(--accent) 42%, var(--line));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.shell-journal-index__heading,
.quest-journal-index__heading {
  align-items: baseline;
  border-bottom: 1px solid var(--line-soft);
  display: flex;
  gap: 0.55rem;
  justify-content: space-between;
  padding: 0.7rem 0.8rem;
}

.shell-journal-index__heading strong,
.quest-journal-index__heading strong {
  font-family: var(--display-font);
  letter-spacing: 0;
}

.shell-journal-index__heading small,
.quest-journal-index__heading small {
  color: var(--muted);
}

.shell-journal-index__list,
.quest-journal-index__list {
  display: grid;
  align-content: start;
  gap: 0.1rem;
  overflow: auto;
  padding: 0.45rem;
}

.shell-journal-group {
  background: transparent;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--line) 62%, transparent);
  gap: 0;
  padding: 0;
}

.shell-journal-group__toggle {
  background: color-mix(in srgb, var(--panel) 64%, transparent);
  border: 0;
  border-radius: 0;
  min-height: 2rem;
  padding: 0.35rem 0.45rem;
}

.shell-journal-group__toggle:hover {
  background: color-mix(in srgb, var(--accent) 9%, transparent);
}

.shell-journal-group__toggle span {
  gap: 0.08rem;
}

.shell-journal-group__toggle strong {
  color: var(--text);
  font-family: var(--display-font);
  font-size: 0.86rem;
  letter-spacing: 0;
}

.shell-journal-group__toggle small {
  font-size: 0.68rem;
}

.shell-journal-group__body {
  display: grid;
  gap: 0.06rem;
  padding: 0.08rem 0 0.2rem;
}

.shell-journal-index-row,
.quest-index-row {
  align-items: start;
  background: transparent;
  border: 0;
  color: var(--muted);
  display: grid;
  gap: 0.4rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  justify-content: stretch;
  min-height: 2.45rem;
  padding: 0.34rem 0.4rem;
  text-align: left;
  width: 100%;
}

.shell-journal-index-row:hover,
.shell-journal-index-row.is-selected,
.quest-index-row:hover,
.quest-index-row.is-selected {
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  color: var(--text);
}

.shell-journal-index-row__marker,
.quest-index-row__marker {
  border-left: 0.38rem solid var(--accent);
  border-top: 0.28rem solid transparent;
  border-bottom: 0.28rem solid transparent;
  height: 0;
  margin-top: 0.35rem;
  opacity: 0.45;
  width: 0;
}

.shell-journal-index-row.is-selected .shell-journal-index-row__marker,
.quest-index-row.is-selected .quest-index-row__marker {
  opacity: 1;
}

.shell-journal-index-row__copy,
.quest-index-row__copy {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
}

.shell-journal-index-row__copy strong,
.shell-journal-index-row__copy small,
.quest-index-row__copy strong,
.quest-index-row__copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-journal-index-row__copy strong,
.quest-index-row__copy strong {
  color: inherit;
  font-family: var(--display-font);
  letter-spacing: 0;
}

.shell-journal-index-row__copy small,
.shell-journal-index-row__state,
.quest-index-row__copy small,
.quest-index-row__state {
  color: var(--muted);
  font-size: 0.74rem;
}

.shell-journal-index-row__state,
.quest-index-row__state {
  text-transform: uppercase;
}

.shell-journal-detail,
.quest-journal-detail {
  overflow: auto;
  padding: 0.8rem;
}

.quest-journal-detail .quest-card {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0.35rem 0.6rem 0.6rem;
}

.compendium-journal-card-detail {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(13rem, 0.72fr) minmax(0, 1fr);
  min-width: 0;
}

.compendium-journal-card-detail .nysa-card {
  justify-self: center;
}

.compendium-journal-card-meta,
.quest-admin-journal-summary {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.quest-admin-journal-detail {
  padding: 0.8rem;
}

.quest-admin-journal-summary {
  background: transparent;
  box-shadow: none;
}

.journal-shell-detail-card {
  display: grid;
  gap: 0.85rem;
}

.journal-shell-detail-card .card-module {
  border-top: 0;
  padding-top: 0;
}

.shell-panel-pages {
  align-items: start;
  display: grid;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 0;
  min-width: 0;
}

.shell-panel-pages > [data-shell-panel] {
  min-width: 0;
  width: 100%;
}

.shell-panel-pages > [data-shell-panel][hidden] {
  display: none;
}

.shell-panel-pages [data-shell-journal-layout],
.route-template [data-shell-journal-layout] {
  width: 100%;
}

.quest-admin-workspace {
  min-width: 0;
}

.quest-admin-panel {
  align-content: start;
  display: grid;
  gap: var(--profile-grid-gap);
  max-width: 100%;
  min-width: 0;
}

.quest-admin-compact-list {
  display: grid;
  gap: 0.45rem;
}

.quest-admin-row {
  align-items: center;
  background: var(--surface-strong);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--text);
  display: grid;
  gap: 0.6rem;
  grid-template-columns: 0.22rem minmax(0, 1fr) auto;
  min-width: 0;
  padding: 0.65rem 0.75rem;
  text-align: left;
  width: 100%;
}

.quest-admin-row-main {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: stretch;
  min-width: 0;
  padding: 0;
  text-align: left;
}

.quest-admin-row-main:hover {
  background: transparent;
}

.quest-admin-row::before {
  align-self: stretch;
  background: var(--quest-state-color, var(--line));
  content: "";
  height: 100%;
  margin: -0.2rem 0;
  width: 0.22rem;
}

.quest-admin-row.is-selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent);
}

.quest-admin-row-main span {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.quest-admin-row-main strong,
.quest-admin-row-main small {
  overflow-wrap: anywhere;
}

.quest-admin-row-main small,
.quest-admin-row-main b {
  color: var(--muted);
  font-size: 0.78rem;
}

.quest-admin-editor {
  align-content: start;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 18rem),
    color-mix(in srgb, var(--surface) 92%, transparent);
  border: 1px solid var(--line-soft);
  display: grid;
  gap: 0.85rem;
  max-width: 100%;
  min-width: 0;
  padding: 1rem;
  overflow: hidden;
}

.quest-admin-editor__head {
  align-items: start;
  border-left: 0.3rem solid var(--quest-state-color, var(--line));
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: space-between;
  padding-left: 0.75rem;
  min-width: 0;
}

.quest-admin-editor__head > div:first-child {
  min-width: 0;
}

.quest-admin-editor__head h3,
.quest-card h3 {
  font-family: var(--display-font);
  letter-spacing: 0;
  line-height: 1.12;
  margin: 0;
  overflow-wrap: anywhere;
}

.quest-admin-editor__head p {
  max-width: 70ch;
  overflow-wrap: anywhere;
}

.quest-admin-editor__head-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
  min-width: min(16rem, 100%);
}

.quest-admin-summary,
.quest-essentials {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
  margin: 0;
  min-width: 0;
}

.quest-admin-summary div,
.quest-essentials div {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: color-mix(in srgb, var(--surface-strong) 82%, transparent);
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.65rem;
}

.quest-admin-summary dt,
.quest-essentials dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.quest-admin-summary dd,
.quest-essentials dd {
  font-weight: 800;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.quest-admin-editor-form {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quest-admin-editor-form label {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.quest-admin-editor-form label span {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.quest-admin-editor-form input,
.quest-admin-editor-form select,
.quest-admin-editor-form textarea {
  background: color-mix(in srgb, var(--panel) 88%, var(--ink) 12%);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--ink);
  font: inherit;
  min-width: 0;
  padding: 0.65rem 0.75rem;
  width: 100%;
}

.quest-admin-editor-form__wide,
.quest-admin-editor-actions {
  grid-column: 1 / -1;
}

.quest-admin-editor-actions {
  display: flex;
  justify-content: flex-end;
}

.quest-admin-operator-grid {
  align-items: start;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: minmax(16rem, 0.9fr) minmax(0, 1.1fr);
  min-width: 0;
}

.quest-admin-qr-column {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.quest-admin-lifecycle {
  align-items: center;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr);
  padding-top: 0.85rem;
}

.quest-admin-lifecycle .quest-card-actions {
  justify-content: flex-end;
}

.quest-admin-action--primary {
  background: color-mix(in srgb, var(--accent-2) 24%, var(--surface-strong));
  border-color: color-mix(in srgb, var(--accent-2) 72%, var(--line));
  box-shadow: 0 0 1rem rgba(69, 200, 159, 0.12);
  font-weight: 900;
}

.quest-admin-action--secondary {
  opacity: 0.76;
}

.quest-card {
  border-left: 0.3rem solid var(--quest-state-color, var(--line));
  gap: 0.75rem;
}

.quest-card--player {
  gap: 0.6rem;
  padding: 0.85rem;
}

.quest-surface .journal-tabs {
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.5rem;
}

.quest-surface .journal-tabs::before {
  color: var(--accent);
  content: attr(data-dom-nav-label);
  font-family: var(--display-font);
  font-size: 0.84rem;
  font-weight: 900;
  letter-spacing: 0;
  margin-right: 0.25rem;
  text-transform: uppercase;
}

.quest-board-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  min-height: 0;
  padding-top: 0.75rem;
}

.quest-board-panel .quest-list {
  align-content: start;
  margin-top: 0;
  min-height: 100%;
  overflow: auto;
}

.quest-receipt-panel {
  display: grid;
  gap: 1rem;
}

.quest-receipt-panel[hidden] {
  display: none;
}

.quest-card--player .quest-card__summary {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.quest-card--focused {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 36%, transparent);
}

.quest-reward-receipt-line {
  background: color-mix(in srgb, #60d394 12%, transparent);
  border: 1px solid color-mix(in srgb, #60d394 64%, var(--line));
  border-radius: 6px;
  color: color-mix(in srgb, #60d394 84%, var(--text));
  font-family: var(--display-font);
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
  padding: 0.55rem 0.65rem;
}

.quest-scan-panel,
.quest-focus-panel,
.quest-completion-panel {
  border: 1px solid var(--accent);
  border-radius: 8px;
  margin: 1rem 0 0;
  padding: 1rem;
}

.quest-scan-panel,
.quest-completion-panel {
  background: color-mix(in srgb, var(--accent) 10%, transparent);
}

.quest-scan-card {
  display: grid;
  gap: 0.85rem;
}

.quest-scan-card .quest-essentials--player {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.quest-scan-card--ready {
  border-color: var(--accent);
}

.quest-scan-card__hero {
  display: grid;
  gap: 0.45rem;
}

.quest-scan-card__hero h3 {
  font-size: 1.45rem;
}

.quest-scan-card__status {
  align-items: baseline;
  border: 1px solid var(--accent);
  border-radius: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.65rem 0.75rem;
}

.quest-scan-card__status strong {
  color: var(--accent);
  font-size: 1.5rem;
}

.quest-scan-primary-action {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border: 1px solid var(--accent);
  border-radius: 8px;
  display: grid;
  gap: 0.4rem;
  padding: 0.75rem;
}

.quest-scan-primary-action button {
  font-weight: 800;
  min-height: 3rem;
}

.quest-scan-primary-action small {
  color: var(--muted);
}

.quest-target-tag {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent) 54%, var(--line));
  border-radius: 999px;
  color: var(--text);
  display: inline-flex;
  font: inherit;
  font-weight: 800;
  line-height: 1.1;
  max-width: 100%;
  min-height: 1.45rem;
  overflow-wrap: anywhere;
  padding: 0.12rem 0.45rem;
  text-align: left;
  vertical-align: middle;
  white-space: normal;
}

button.quest-target-tag {
  cursor: pointer;
}

.quest-focus-card {
  align-items: start;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(15rem, auto) minmax(0, 1fr);
}

.quest-focus-card__card {
  display: grid;
  gap: 0.75rem;
  justify-items: center;
}

.quest-focus-card__card .nysa-card {
  --small-card-width: min(19rem, 74vw);
}

.quest-focus-card__quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  width: min(100%, var(--small-card-width, 19rem));
}

.quest-focus-card__quick-actions > * {
  min-height: 2.65rem;
}

.quest-focus-card__quick-actions .quest-card-action--primary {
  flex: 1 1 10rem;
}

.quest-focus-card__copy {
  display: grid;
  gap: 0.75rem;
}

@media (max-width: 760px) {
  .quest-focus-card {
    grid-template-columns: minmax(0, 1fr);
  }
}

.quest-card__hero,
.quest-card header {
  align-items: start;
  display: flex;
  gap: 0.8rem;
  justify-content: space-between;
}

.quest-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-width: 0;
}

.quest-card-actions > * {
  min-width: 4.5rem;
  white-space: nowrap;
}

.quest-card-action--primary {
  background: color-mix(in srgb, var(--accent) 22%, var(--surface-strong));
  border-color: color-mix(in srgb, var(--accent) 76%, var(--line));
  color: var(--text);
  font-weight: 900;
}

.quest-essentials--player {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.quest-essentials--player div {
  padding: 0.5rem;
}

.quest-state-active {
  --quest-state-color: var(--accent);
  --nysa-state-color: var(--accent);
}

.quest-state-complete {
  --quest-state-color: #60d394;
  --nysa-state-color: #60d394;
}

.quest-state-draft {
  --quest-state-color: #8fb8ff;
  --nysa-state-color: #8fb8ff;
}

.quest-state-muted {
  --quest-state-color: #8f8a7c;
  --nysa-state-color: #8f8a7c;
}

.quest-state-neutral {
  --quest-state-color: var(--line);
  --nysa-state-color: var(--line);
}

.quest-state-pill {
  border: 1px solid var(--quest-state-color, var(--line));
  color: var(--quest-state-color, var(--muted));
  flex: 0 0 auto;
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  padding: 0.22rem 0.5rem;
  text-transform: uppercase;
}

.quest-info-drawer {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.75rem;
  padding: 0.7rem 0.8rem;
}

.quest-info-drawer[open] {
  background: color-mix(in srgb, var(--surface-strong) 64%, transparent);
}

.quest-info-drawer summary {
  color: var(--text);
  cursor: pointer;
  font-family: var(--display-font);
  font-weight: 800;
  letter-spacing: 0;
}

.quest-info-drawer > *:not(summary) {
  margin-top: 0.75rem;
}

.quest-receipt-drawer {
  border-color: color-mix(in srgb, #60d394 52%, var(--line));
}

.quest-receipt-drawer summary {
  color: color-mix(in srgb, #60d394 82%, var(--text));
}

.quest-receipt-drawer .contract-list {
  gap: 0.35rem;
}

.quest-receipt-drawer .contract-list div {
  grid-template-columns: minmax(5.25rem, 0.34fr) minmax(0, 1fr);
}

.quest-receipt-drawer .contract-list dd {
  overflow-wrap: anywhere;
}

.quest-progress {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.65rem;
  padding: 0.75rem;
}

.quest-progress--receipt {
  background: color-mix(in srgb, var(--surface-strong) 75%, transparent);
}

.quest-progress__bar {
  background: color-mix(in srgb, var(--muted) 18%, transparent);
  border-radius: 999px;
  height: 0.45rem;
  overflow: hidden;
}

.quest-progress__bar span {
  background: var(--accent);
  display: block;
  height: 100%;
}

.quest-progress__summary {
  display: grid;
  gap: 0.15rem;
}

.quest-progress__summary small {
  color: var(--muted);
}

.quest-progress__steps {
  display: grid;
  gap: 0.35rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.quest-progress__steps li {
  align-items: center;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-width: 0;
  overflow-wrap: anywhere;
}

.quest-progress__steps li > span {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  flex: 0 0 auto;
  font-size: 0.72rem;
  font-weight: 800;
  padding: 0.08rem 0.45rem;
  text-transform: uppercase;
}

.quest-progress__steps li.is-complete > span {
  border-color: var(--accent);
  color: var(--accent);
}

.quest-progress__step-main {
  display: grid;
  gap: 0.1rem;
  min-width: 0;
}

.quest-progress__step-main strong {
  min-width: 0;
}

.quest-progress__step-main small,
.quest-progress__note {
  color: var(--muted);
  font-size: 0.78rem;
}

.quest-progress__step-actions {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  justify-content: end;
  min-width: 0;
}

.quest-progress__action {
  font-size: 0.78rem;
  min-height: 2rem;
  padding: 0.3rem 0.55rem;
  white-space: nowrap;
}

.quest-progress__sigil-form {
  align-items: center;
  display: grid;
  gap: 0.35rem;
  grid-template-columns: minmax(7.5rem, 1fr) auto;
  min-width: min(100%, 20rem);
}

.quest-progress__sigil-form small {
  color: var(--muted);
  font-size: 0.72rem;
  grid-column: 1 / -1;
}

.quest-progress__sigil-form input {
  min-height: 2rem;
  min-width: 0;
  width: 100%;
}

@media (max-width: 620px) {
  .quest-progress__steps li {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .quest-progress__step-actions {
    grid-column: 2;
    justify-content: start;
  }

  .quest-progress__sigil-form {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .quest-progress__sigil-form .quest-progress__action {
    width: 100%;
  }
}

.quest-admin-step-list {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.75rem;
  padding: 0.75rem;
}

.quest-admin-step-list header,
.quest-admin-qr-list header {
  display: grid;
  gap: 0.15rem;
}

.quest-admin-step-list h4,
.quest-admin-qr-list h4 {
  margin: 0;
}

.quest-admin-step-list ol {
  display: grid;
  gap: 0.35rem;
  list-style: none;
  margin: 0.3rem 0 0;
  padding: 0;
}

.quest-admin-step-list li {
  align-items: center;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  overflow-wrap: anywhere;
}

.quest-admin-task-stack {
  display: grid;
  gap: 0.65rem;
}

.quest-admin-task-card {
  background: color-mix(in srgb, var(--panel) 90%, var(--ink) 10%);
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: clip;
}

.quest-admin-task-card[open] {
  border-color: color-mix(in srgb, var(--accent) 60%, var(--line));
}

.quest-admin-task-card > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(0, 1fr) auto;
  list-style: none;
  min-width: 0;
  padding: 0.7rem 0.8rem;
}

.quest-admin-task-card > summary::-webkit-details-marker {
  display: none;
}

.quest-admin-task-card__summary {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.quest-admin-task-card__summary strong,
.quest-admin-task-card__summary small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.quest-admin-task-card__summary small {
  color: var(--muted);
}

.quest-admin-task-card__body {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.75rem;
  padding: 0.8rem;
}

.quest-admin-task-card .quest-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.quest-admin-task-card--add {
  border-style: dashed;
}

.quest-admin-task-main {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.quest-admin-task-main small {
  color: var(--muted);
}

.quest-admin-mini-list {
  display: grid;
  gap: 0.45rem;
}

.quest-admin-festival-console {
  display: grid;
  gap: 0.8rem;
  margin: 0.75rem 0;
}

.quest-admin-festival-console > header {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr);
}

.quest-admin-festival-console h4 {
  font-size: 1.05rem;
  margin: 0.1rem 0 0;
}

.quest-admin-festival-console > header .quest-card-actions {
  display: none;
}

.quest-admin-operator-grid--primary {
  align-items: start;
  grid-template-columns: minmax(0, 1fr);
}

.quest-admin-operator-grid--debug {
  align-items: start;
  grid-template-columns: repeat(auto-fit, minmax(min(22rem, 100%), 1fr));
}

.quest-admin-funding-meter {
  border: 1px solid var(--line);
  border-left: 0.3rem solid var(--danger);
  border-radius: 6px;
  display: grid;
  gap: 0.65rem;
  padding: 0.7rem;
}

.quest-admin-funding-meter.is-funded {
  border-left-color: var(--accent-2);
}

.quest-admin-funding-meter__bar {
  background: color-mix(in srgb, var(--muted) 18%, transparent);
  border-radius: 999px;
  height: 0.5rem;
  overflow: hidden;
}

.quest-admin-funding-meter__bar span {
  background: var(--danger);
  display: block;
  height: 100%;
}

.quest-admin-funding-meter.is-funded .quest-admin-funding-meter__bar span {
  background: var(--accent-2);
}

.quest-admin-funding-meter.is-low {
  border-color: color-mix(in srgb, #ffce5c 68%, var(--line));
}

.quest-admin-funding-meter.is-low .quest-admin-funding-meter__bar span {
  background: #ffce5c;
}

.quest-admin-funding-meter dl {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.quest-admin-funding-meter div {
  min-width: 0;
}

.quest-admin-funding-meter dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.quest-admin-funding-meter dd {
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}

.quest-admin-escrow-chart {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.65rem;
  padding: 0.75rem;
}

.quest-admin-escrow-chart > header {
  align-items: end;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.quest-admin-escrow-chart h5 {
  font-size: 1rem;
  margin: 0.05rem 0 0;
}

.quest-admin-escrow-chart__stack {
  background: color-mix(in srgb, var(--muted) 18%, transparent);
  border-radius: 999px;
  display: flex;
  height: 0.8rem;
  overflow: hidden;
}

.quest-admin-escrow-chart__slice {
  display: block;
  min-width: 0.35rem;
}

.quest-admin-escrow-chart__slice--1 {
  background: var(--accent-2);
}

.quest-admin-escrow-chart__slice--2 {
  background: #ffce5c;
}

.quest-admin-escrow-chart__slice--3 {
  background: #7aa7ff;
}

.quest-admin-escrow-chart__slice--4 {
  background: #d982ff;
}

.quest-admin-escrow-chart__slice--5 {
  background: #ff8a5c;
}

.quest-admin-escrow-chart__totals {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.quest-admin-escrow-chart__totals div,
.quest-admin-escrow-chart__rows article {
  min-width: 0;
}

.quest-admin-escrow-chart dt {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.quest-admin-escrow-chart dd {
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}

.quest-admin-escrow-chart__rows {
  display: grid;
  gap: 0.45rem;
}

.quest-admin-escrow-chart__source {
  border-top: 1px solid var(--line);
  min-width: 0;
}

.quest-admin-escrow-chart__source > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 0.55rem;
  grid-template-columns: auto minmax(0, 1fr) minmax(12rem, auto);
  list-style: none;
  padding-top: 0.55rem;
}

.quest-admin-escrow-chart__source > summary::-webkit-details-marker {
  display: none;
}

.quest-admin-escrow-chart__source strong,
.quest-admin-escrow-chart__source small {
  overflow-wrap: anywhere;
}

.quest-admin-escrow-chart__source small {
  color: var(--muted);
}

.quest-admin-escrow-chart__source > summary dl {
  display: grid;
  gap: 0.35rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.quest-admin-escrow-chart__details {
  display: grid;
  gap: 0.6rem;
  padding: 0.65rem 0 0 1.25rem;
}

.quest-admin-escrow-chart__dot {
  border-radius: 999px;
  display: block;
  height: 0.7rem;
  width: 0.7rem;
}

.quest-admin-funding-meter > strong {
  color: var(--text);
}

.quest-admin-funding-ready {
  background: color-mix(in srgb, var(--accent-2) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent-2) 58%, var(--line));
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.65rem 0.75rem;
}

.quest-admin-funding-ready span {
  color: var(--muted);
}

.quest-admin-funding-form {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(0, 1fr) minmax(11rem, 0.65fr);
  padding: 0.75rem;
}

.quest-admin-funding-form label {
  display: grid;
  gap: 0.3rem;
}

.quest-admin-funding-form input {
  background: color-mix(in srgb, var(--panel) 88%, var(--ink) 12%);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--ink);
  min-width: 0;
  padding: 0.65rem 0.75rem;
  width: 100%;
}

.quest-admin-funding-form__source,
.quest-admin-funding-form__amount {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.quest-admin-funding-form__amount button {
  min-height: 2.75rem;
}

.quest-admin-funding-form .quest-admin-sponsor-message {
  grid-column: 1 / -1;
  padding: 0.55rem 0.65rem;
}

.quest-admin-funding-note {
  padding: 0.6rem 0.7rem;
}

.quest-admin-mini-list article {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.15rem;
  padding: 0.6rem 0.7rem;
}

.quest-admin-mini-list strong,
.quest-admin-mini-list span,
.quest-admin-mini-list small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.quest-admin-mini-list span,
.quest-admin-mini-list small {
  color: var(--muted);
}

.quest-admin-approval-tray {
  margin: 0 0 1rem;
}

.quest-admin-approval-tray[hidden] {
  display: none;
}

.quest-admin-approval-row {
  grid-template-columns: minmax(0, 1fr);
  gap: 0.35rem;
  align-items: stretch;
}

.quest-admin-approval-row .quest-card-actions {
  grid-column: 1;
  grid-row: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.35rem;
  align-self: stretch;
}

.quest-admin-approval-row .quest-card-actions > * {
  justify-content: center;
  min-width: 0;
  width: 100%;
}

.quest-studio {
  min-width: 0;
}

.quest-studio-shell {
  display: grid;
  gap: 1rem;
}

.quest-studio-header {
  display: grid;
  gap: 0.15rem;
  margin: 0 0 0.75rem;
}

.quest-studio-header h3 {
  font-family: var(--display-font);
  letter-spacing: 0;
  margin: 0;
}

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

.quest-studio-section {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
  padding: 0.9rem;
}

.quest-studio-form {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quest-studio-form label {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
}

.quest-studio-form__wide {
  grid-column: 1 / -1;
}

.quest-studio-form input,
.quest-studio-form select,
.quest-studio-form textarea {
  background: color-mix(in srgb, var(--panel) 88%, var(--ink) 12%);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--ink);
  min-width: 0;
  padding: 0.65rem 0.75rem;
  width: 100%;
}

.quest-studio-quest-row {
  display: grid;
  gap: 0.8rem;
  margin: 0 0 0.75rem;
  padding: 0.9rem;
}

@media (min-width: 780px) {
  .quest-admin-approval-row {
    grid-template-columns: minmax(0, 1fr) minmax(15rem, auto);
    gap: 0.25rem 0.75rem;
    align-items: center;
  }

  .quest-admin-approval-row .quest-card-actions {
    grid-column: 2;
    grid-row: 1 / span 3;
    grid-template-columns: repeat(2, minmax(6rem, 1fr));
    align-self: center;
  }
}

@media (max-width: 760px) {
  .quest-studio-grid,
  .quest-studio-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .quest-studio-section {
    padding: 0.75rem;
  }
}

.quest-admin-step-form {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
}

.quest-admin-step-form--edit {
  border-top: 1px solid var(--line);
  padding-top: 0.75rem;
}

.quest-admin-step-form label {
  display: grid;
  gap: 0.3rem;
}

.quest-admin-step-form__wide {
  grid-column: 1 / -1;
}

.quest-admin-step-form input,
.quest-admin-step-form select,
.quest-admin-step-form textarea {
  background: color-mix(in srgb, var(--panel) 88%, var(--ink) 12%);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--ink);
  min-width: 0;
  padding: 0.65rem 0.75rem;
  resize: vertical;
  width: 100%;
}

.quest-admin-step-form > button {
  align-self: end;
}

.quest-admin-step-message {
  grid-column: 1 / -1;
  padding: 0.55rem 0.65rem;
}

.quest-admin-create-panel {
  display: grid;
  gap: 1rem;
}

.quest-admin-create-panel > .nysa-compact-hero,
.quest-admin-panel > header {
  display: grid;
  gap: 0.35rem;
  justify-content: stretch;
}

.quest-admin-create-panel > .nysa-compact-hero > *,
.quest-admin-panel > header > * {
  min-width: 0;
}

.quest-admin-create-form {
  align-items: end;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.quest-admin-create-form--drawer {
  align-items: start;
  margin-top: 0.75rem;
}

.quest-admin-create-form label {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.quest-admin-create-form label span {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.quest-admin-create-form input,
.quest-admin-create-form select {
  background: color-mix(in srgb, var(--panel) 88%, var(--ink) 12%);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--ink);
  min-width: 0;
  padding: 0.7rem 0.75rem;
  width: 100%;
}

.quest-admin-create-form__wide {
  grid-column: span 2;
}

.quest-admin-create-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.quest-admin-create-actions button {
  flex: 1 1 10rem;
}

.quest-admin-qr-list {
  border: 1px solid var(--line);
  border-radius: 6px;
  display: grid;
  gap: 0.6rem;
  padding: 0.75rem;
}

.quest-admin-qr-item {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 0.35rem 0 0;
}

.quest-admin-qr-item code {
  display: block;
  margin-top: 0.25rem;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.quest-admin-qr-details {
  margin-top: 0.5rem;
}

.quest-admin-qr-details summary {
  color: var(--accent);
  cursor: pointer;
  font-weight: 800;
}

.quest-admin-qr-details .contract-list {
  margin-top: 0.5rem;
}

.quest-admin-qr-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.quest-web-forge-map-mode {
  display: inline-flex;
  gap: 0.25rem;
  padding: 0.2rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
}

.quest-web-forge-map-mode button {
  min-height: 2rem;
  padding: 0.25rem 0.65rem;
  border-color: transparent;
  background: transparent;
}

.quest-web-forge-map-mode button.is-active {
  border-color: rgba(139, 209, 255, 0.56);
  background: rgba(139, 209, 255, 0.16);
}

.quest-web-forge-webs-layout {
  display: grid;
  gap: 1rem;
}

.quest-web-forge-web-directory,
.quest-web-forge-web-editor {
  display: grid;
  gap: 0.75rem;
}

.quest-web-forge-web-directory > header,
.quest-web-forge-web-editor > header {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.quest-web-forge-web-directory > header h3,
.quest-web-forge-web-editor > header h3 {
  margin: 0;
}

.quest-web-forge-web-list {
  display: grid;
  gap: 0.65rem;
}

.quest-web-forge-web-card {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(14rem, 1.3fr) minmax(14rem, 1fr) auto;
  gap: 0.75rem;
  padding: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.quest-web-forge-web-card.is-selected {
  border-color: rgba(139, 209, 255, 0.72);
  background: rgba(139, 209, 255, 0.08);
}

.quest-web-forge-web-card__main,
.quest-web-forge-web-card__meta {
  display: grid;
  gap: 0.25rem;
}

.quest-web-forge-web-card__main strong {
  line-height: 1.2;
}

.quest-web-forge-web-card__main small {
  overflow-wrap: anywhere;
}

.quest-web-forge-web-card__meta {
  align-items: start;
  display: flex;
  flex-wrap: wrap;
}

.quest-web-forge-web-card__meta span {
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 999px;
  padding: 0.15rem 0.5rem;
  font-size: 0.76rem;
}

.quest-web-forge-map {
  position: relative;
  min-height: 620px;
  overflow: auto;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background:
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    rgba(12, 15, 20, 0.68);
  background-size: 32px 32px;
}

.quest-web-forge-map.is-pan-mode {
  cursor: grab;
  touch-action: pan-x pan-y;
}

.quest-web-forge-map.is-panning {
  cursor: grabbing;
}

.quest-web-forge-map.is-link-mode {
  cursor: crosshair;
}

.quest-web-forge-map__edges,
.quest-web-forge-map__nodes {
  position: absolute;
  inset: 0;
  min-width: 1180px;
  min-height: 720px;
}

.quest-web-forge-map__edges {
  pointer-events: none;
  z-index: 1;
}

.quest-web-forge-map__nodes {
  z-index: 2;
}

.quest-web-forge-map.is-move-mode .quest-web-forge-map__nodes {
  touch-action: auto;
}

.quest-web-forge-map.is-pan-mode .quest-web-forge-map__nodes {
  touch-action: pan-x pan-y;
}

.quest-web-forge-map-edge-unlink {
  position: absolute;
  z-index: 3;
  width: 1.75rem;
  height: 1.75rem;
  min-height: 1.75rem;
  padding: 0;
  transform: translate(-50%, -50%);
  border-color: rgba(255, 116, 116, 0.72);
  border-radius: 999px;
  background: rgba(18, 23, 31, 0.94);
  color: #ffb3b3;
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1;
  touch-action: manipulation;
}

.quest-web-forge-map-edge-unlink:hover,
.quest-web-forge-map-edge-unlink:focus-visible {
  border-color: rgba(255, 116, 116, 0.96);
  background: rgba(95, 24, 31, 0.96);
  color: #ffffff;
}

.quest-web-forge-map-node {
  position: absolute;
  width: 230px;
  min-height: 132px;
  padding: 0.75rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  background: rgba(18, 23, 31, 0.96);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.28);
  cursor: grab;
  user-select: none;
}

.quest-web-forge-map.is-move-mode .quest-web-forge-map-node {
  touch-action: none;
}

.quest-web-forge-map.is-pan-mode .quest-web-forge-map-node {
  cursor: default;
  touch-action: pan-x pan-y;
}

.quest-web-forge-map.is-link-mode .quest-web-forge-map-node {
  cursor: pointer;
  touch-action: manipulation;
}

.quest-web-forge-map-node:active {
  cursor: grabbing;
}

.quest-web-forge-map.is-pan-mode .quest-web-forge-map-node:active {
  cursor: default;
}

.quest-web-forge-map.is-link-mode .quest-web-forge-map-node:active {
  cursor: pointer;
}

.quest-web-forge-map-node.is-selected {
  border-color: rgba(139, 209, 255, 0.82);
  box-shadow: 0 0 0 2px rgba(139, 209, 255, 0.18), 0 12px 34px rgba(0, 0, 0, 0.34);
}

.quest-web-forge-map-node.is-link-source {
  border-color: rgba(151, 216, 133, 0.9);
}

.quest-web-forge-map-node.is-link-target {
  border-color: rgba(255, 198, 92, 0.9);
  box-shadow: 0 0 0 2px rgba(255, 198, 92, 0.18), 0 12px 34px rgba(0, 0, 0, 0.34);
}

.quest-web-forge-map-node h4 {
  margin: 0 0 0.35rem;
  font-size: 0.98rem;
  line-height: 1.2;
}

.quest-web-forge-map-node small,
.quest-web-forge-map-node span {
  display: block;
}

.quest-web-forge-map-node__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.6rem;
}

.quest-web-forge-map-node__badges span {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  padding: 0.12rem 0.45rem;
  font-size: 0.72rem;
}

.quest-web-forge-map-node__badges .is-error {
  border-color: rgba(255, 116, 116, 0.62);
}

.quest-web-forge-map-node__badges .is-warning {
  border-color: rgba(255, 198, 92, 0.62);
}

.quest-web-forge-map-node__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.7rem;
}

.quest-web-forge-map-node__actions button {
  min-height: 2rem;
  padding: 0.25rem 0.55rem;
}

.quest-web-forge-map-sheet {
  display: none;
}

.quest-web-forge-map-sheet__prompt {
  border-left: 3px solid rgba(139, 209, 255, 0.72);
  margin: 0;
  padding: 0.35rem 0 0.35rem 0.75rem;
}

.quest-web-forge-map-sheet__link-form {
  display: grid;
  gap: 0.65rem;
}

.quest-web-forge-issue {
  border-left: 3px solid rgba(255, 198, 92, 0.72);
}

.quest-web-forge-issue.is-error {
  border-left-color: rgba(255, 116, 116, 0.82);
}

.quest-web-forge-issue.is-warning {
  border-left-color: rgba(255, 198, 92, 0.82);
}

@media (max-width: 760px), (pointer: coarse) {
  .quest-web-forge-web-directory > header,
  .quest-web-forge-web-editor > header {
    align-items: start;
    display: grid;
  }

  .quest-web-forge-web-card {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .quest-web-forge-web-card .quest-card-actions {
    justify-content: stretch;
  }

  .quest-web-forge-web-card .quest-card-actions button {
    flex: 1 1 8rem;
    min-height: 2.6rem;
  }

  .quest-web-forge-map-toolbar {
    position: sticky;
    top: 0.5rem;
    z-index: 12;
    align-items: stretch;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
    justify-content: stretch;
    padding: 0.55rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    background: rgba(12, 15, 20, 0.94);
    backdrop-filter: blur(12px);
  }

  .quest-web-forge-map-toolbar > button,
  .quest-web-forge-map-mode button {
    min-height: 2.75rem;
  }

  .quest-web-forge-map-mode {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .quest-web-forge-map {
    min-height: 72vh;
    margin-inline: -0.65rem;
    border-inline: 0;
    border-radius: 0;
    scroll-padding: 1.25rem;
  }

  .quest-web-forge-map__edges,
  .quest-web-forge-map__nodes {
    min-width: 780px;
    min-height: 820px;
  }

  .quest-web-forge-map-node {
    width: 300px;
    min-height: 164px;
    padding: 1rem;
  }

  .quest-web-forge-map-node h4 {
    font-size: 1.05rem;
  }

  .quest-web-forge-map-node__actions {
    display: none;
  }

  .quest-web-forge-map-edge-unlink {
    width: 2.25rem;
    height: 2.25rem;
    min-height: 2.25rem;
  }

  .quest-web-forge-map-sheet:not([hidden]) {
    position: sticky;
    bottom: 0;
    z-index: 14;
    display: grid;
    gap: 0.75rem;
    margin: -1rem -0.75rem 0;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 12px 12px 0 0;
    background: rgba(14, 18, 25, 0.98);
    box-shadow: 0 -16px 40px rgba(0, 0, 0, 0.34);
  }

  .quest-web-forge-map-sheet header {
    align-items: start;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
  }

  .quest-web-forge-map-sheet h3 {
    margin: 0;
    font-size: 1.1rem;
  }

  .quest-web-forge-map-sheet [data-quest-web-forge-map-sheet-close] {
    width: 2.25rem;
    min-height: 2.25rem;
    padding: 0;
    border-radius: 999px;
  }

  .quest-web-forge-map-sheet__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
  }

  .quest-web-forge-map-sheet__meta span {
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 999px;
    padding: 0.18rem 0.55rem;
    font-size: 0.78rem;
  }

  .quest-web-forge-map-sheet .quest-card-actions {
    justify-content: stretch;
  }

  .quest-web-forge-map-sheet .quest-card-actions button {
    flex: 1 1 8rem;
    min-height: 2.75rem;
  }
}

.qr-display-surface {
  display: grid;
  gap: 1rem;
}

.qr-display-panel {
  display: grid;
  gap: 1.25rem;
}

.qr-display-grid {
  align-items: start;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(18rem, 28rem) minmax(0, 1fr);
}

.qr-display-code {
  align-items: center;
  background: #fffaf0;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  justify-content: center;
  padding: 1rem;
}

.qr-display-code svg {
  display: block;
  height: auto;
  max-width: 100%;
  width: min(24rem, 100%);
}

.coupon-verify-surface--player .coupon-verify-panel {
  gap: 0.9rem;
}

.coupon-verify-surface--player .coupon-verify-panel > header {
  align-items: center;
}

.coupon-verify-surface--player .coupon-verify-panel > header .muted {
  display: none;
}

.player-coupon-card {
  border: 1px solid color-mix(in srgb, var(--accent) 38%, var(--line));
  border-radius: 8px;
  display: grid;
  gap: 0.8rem;
  padding: 1rem;
  text-align: center;
}

.player-coupon-card__status {
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.player-coupon-card h3 {
  font-size: clamp(1.7rem, 8vw, 2.8rem);
  line-height: 0.95;
  margin: 0;
}

.player-coupon-card__category,
.player-coupon-card__instruction {
  color: var(--text);
  margin: 0;
}

.player-coupon-card__parties {
  align-items: center;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.player-coupon-card__parties span:not([aria-hidden]) {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.65rem;
}

.player-coupon-card__parties small {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.player-coupon-card__parties strong {
  overflow-wrap: anywhere;
}

.coupon-verify-surface--player .coupon-verify-qr {
  display: grid;
  gap: 0.5rem;
  justify-items: center;
}

.coupon-verify-surface--player .coupon-verify-qr .qr-display-code {
  width: min(100%, 18rem);
}

.coupon-verify-surface--player .coupon-verify-qr p {
  color: var(--muted);
  margin: 0;
}

.coupon-verify-surface--player .coupon-verify-actions {
  justify-content: center;
}

@media (max-width: 520px) {
  .player-coupon-card__parties {
    grid-template-columns: 1fr;
  }
}

.offering-display-panel {
  min-height: min(760px, calc(100vh - 2rem));
}

body[data-initial-route="offering-display.cfm"] {
  --shell-bottom-rail-height: 0rem;
}

body[data-initial-route="offering-display.cfm"] .shell-bottombar {
  display: none;
}

.offering-display-grid {
  align-items: center;
  grid-template-columns: minmax(18rem, 34rem) minmax(18rem, 1fr);
}

.offering-display-code {
  aspect-ratio: 1;
  min-height: min(72vw, 34rem);
}

.offering-display-code svg {
  width: min(31rem, 100%);
}

.offering-display-copy {
  display: grid;
  gap: 1rem;
}

.offering-display-copy h1 {
  font-size: 4.8rem;
  line-height: 0.98;
  margin: 0;
  overflow-wrap: anywhere;
}

.quest-qr-sheet-panel {
  gap: 1rem;
}

.quest-qr-sheet-header {
  align-items: center;
}

.quest-qr-sheet-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(18rem, 1fr));
}

.quest-qr-sheet-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  break-inside: avoid;
  display: grid;
  gap: 0.75rem;
  padding: 1rem;
}

.quest-qr-sheet-card h3 {
  margin: 0;
}

.quest-qr-sheet-code {
  align-items: center;
  background: #fffaf0;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  justify-content: center;
  min-height: 16rem;
  padding: 0.75rem;
}

.quest-qr-sheet-code svg {
  display: block;
  height: auto;
  max-width: 100%;
  width: min(16rem, 100%);
}

.quest-web-print-cover {
  break-inside: avoid;
}

.quest-web-print-node {
  display: grid;
  gap: 1rem;
}

.quest-web-print-node__head {
  align-items: start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding-bottom: 0.75rem;
}

.quest-web-print-node__head h3,
.quest-web-print-node__head p {
  margin: 0;
}

.quest-web-print-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(18rem, 1fr));
}

.quest-qr-sheet-card--accept {
  border-color: var(--accent);
}

.quest-qr-sheet-card--checkpoint {
  border-color: color-mix(in srgb, var(--line), var(--accent) 22%);
}

.quest-web-print-pending {
  align-items: center;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted);
  display: flex;
  justify-content: center;
  min-height: 10rem;
  padding: 1rem;
  text-align: center;
}

.admin-ops-surface {
  display: grid;
  gap: 1rem;
}

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

.admin-ops-grid--kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-ops-links {
  display: grid;
  gap: 0.5rem;
}

.admin-ops-links a,
.admin-ops-row,
.admin-ops-stat {
  border: 1px solid var(--line);
  color: inherit;
  display: grid;
  gap: 0.25rem;
  min-width: 0;
  padding: 0.65rem;
  text-decoration: none;
}

button.admin-ops-row {
  background: var(--panel);
  cursor: pointer;
  font: inherit;
  text-align: left;
  width: 100%;
}

button.admin-ops-row:hover,
button.admin-ops-row:focus-visible {
  border-color: var(--accent);
}

.admin-ops-account-grid {
  align-items: stretch;
  display: grid;
  gap: 0;
  grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 1.4fr);
}

.identity-repair-queue,
.identity-repair-detail,
.identity-repair-readiness-detail,
.identity-repair-contract-list,
.identity-repair-contract-list div {
  min-width: 0;
}

.identity-repair-row {
  overflow-wrap: anywhere;
  text-align: left;
}

.identity-repair-contract-list dd,
.identity-repair-readiness-detail p {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.identity-repair-readiness-detail {
  display: grid;
  gap: 0.65rem;
}

.admin-account-detail {
  align-content: start;
  display: grid;
  gap: 0.65rem;
}

.admin-account-index-row .shell-journal-index-row__state {
  max-width: 8.5rem;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-account-edit-table {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-account-edit-row {
  display: grid;
  gap: 0.2rem;
  min-width: 0;
}

.admin-account-edit-row span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.admin-account-edit-row input,
.admin-account-edit-row select {
  min-width: 0;
  width: 100%;
}

.admin-account-edit-row output {
  color: var(--text);
  font-size: 0.85rem;
  min-height: 2.2rem;
  padding: 0.55rem 0;
}

.admin-account-edit-row .is-saving,
.admin-account-edit-row input.is-saving,
.admin-account-edit-row select.is-saving {
  border-color: var(--accent);
}

.admin-account-edit-row input.is-saved,
.admin-account-edit-row select.is-saved {
  border-color: var(--accent-2);
}

.admin-account-edit-row input.is-error,
.admin-account-edit-row select.is-error {
  border-color: var(--danger);
}

.admin-connected-editor,
.admin-password-reset-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.4rem;
  padding-top: 0.55rem;
}

.admin-connected-editor label,
.admin-password-reset-form {
  min-width: 0;
}

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

.admin-connected-editor > span,
.admin-connected-editor > small {
  color: var(--muted);
  font-size: 0.78rem;
  grid-column: 1 / -1;
  overflow-wrap: anywhere;
}

.admin-connected-editor input,
.admin-connected-editor select,
.admin-password-reset-form input {
  width: 100%;
}

.admin-password-reset-form {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}

.admin-ops-row strong,
.admin-ops-stat strong,
.admin-ops-links a {
  overflow-wrap: anywhere;
}

.admin-ops-row span,
.admin-ops-row small,
.admin-ops-stat span,
.admin-ops-stat small {
  color: var(--muted);
  font-size: 0.82rem;
}

.admin-ops-table-grid,
.admin-movement-summary {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
}

.journal-signal-card,
.journal-readout-row {
  align-items: start;
  border-color: color-mix(in srgb, var(--frequency-color, var(--line)) 35%, var(--line));
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  min-width: 0;
  padding: 0.65rem;
  text-align: left;
  width: 100%;
}

.journal-row-wrap {
  border: 1px solid color-mix(in srgb, var(--frequency-color, var(--line)) 35%, var(--line));
  display: grid;
  min-width: 0;
  overflow: hidden;
}

.journal-row-wrap .journal-readout-row {
  border: 0;
}

.frequency-chip {
  border: 1px solid color-mix(in srgb, var(--frequency-color, var(--accent)) 70%, var(--line));
  color: var(--frequency-color, var(--accent));
  display: inline-flex;
  font-size: 0.72rem;
  letter-spacing: 0;
  line-height: 1;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 0.25rem 0.35rem;
  text-transform: uppercase;
  width: fit-content;
}

.journal-signal-art {
  aspect-ratio: 1;
  background: var(--surface-strong);
  background-position: center;
  background-size: cover;
  display: block;
}

.journal-signal-card span:last-child,
.journal-readout-row span:last-child {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}

.journal-signal-card small,
.journal-readout-row small {
  color: var(--muted);
}

.journal-signal-time {
  color: var(--muted);
  font-size: 0.76rem;
}

.wallet-surface,
.economy-admin-surface,
.vendor-economy-surface,
.wallet-activity-list {
  display: grid;
  gap: 1rem;
}

.wallet-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr));
}

.vendor-redemption-form {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1.3fr) minmax(7rem, 0.45fr) minmax(8rem, 0.55fr);
}

.vendor-redemption-form label {
  min-width: 0;
}

.vendor-redemption-mode {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding: 0.8rem;
}

.vendor-redemption-mode legend {
  color: var(--muted);
  font-size: 0.75rem;
  letter-spacing: 0;
  padding: 0 0.35rem;
  text-transform: uppercase;
}

.vendor-redemption-mode label {
  align-items: start;
  display: grid;
  gap: 0.35rem;
  grid-template-columns: auto 1fr;
}

.vendor-redemption-mode input {
  margin-top: 0.25rem;
}

.vendor-redemption-mode small {
  grid-column: 2;
}

.vendor-claim-panel,
.vendor-claim-card {
  display: grid;
  gap: 1rem;
}

.vendor-claim-qr {
  margin: 0 auto;
  max-width: 340px;
  width: 100%;
}

.vendor-claim-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.vendor-redemption-form__wide,
.vendor-redemption-form button,
.vendor-redemption-message {
  grid-column: 1 / -1;
}

.vendor-redemption-message .button {
  margin-top: 0.65rem;
}

.vendor-redemption-list {
  display: grid;
  gap: 0.85rem;
}

.vendor-last-redemption {
  display: grid;
  gap: 0.65rem;
  margin-bottom: 0.9rem;
}

.vendor-last-redemption-card {
  border: 1px solid color-mix(in srgb, #37a169 42%, var(--line));
  display: grid;
  gap: 0.75rem;
  padding: 0.8rem;
}

.vendor-last-redemption-card h3 {
  font-size: clamp(1.8rem, 7vw, 2.7rem);
  line-height: 0.95;
  margin: 0;
}

.vendor-last-redemption-memo {
  color: var(--muted);
  margin: 0;
}

.vendor-redemption-summary {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vendor-redemption-summary span {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.65rem;
}

.vendor-redemption-summary strong {
  font-size: 1.45rem;
  line-height: 1;
}

.vendor-redemption-summary small,
.vendor-redemption-group h3 small {
  color: var(--muted);
  font-size: 0.75rem;
  text-transform: uppercase;
}

.vendor-redemption-group {
  display: grid;
  gap: 0.65rem;
}

.vendor-redemption-group header h3 {
  align-items: baseline;
  display: flex;
  gap: 0.45rem;
  margin: 0;
}

.vendor-redemption-card {
  border: 1px solid var(--line);
  grid-template-columns: minmax(0, 1fr) minmax(9rem, auto);
  padding: 0.75rem;
}

.vendor-redemption-card--pending {
  border-color: color-mix(in srgb, var(--accent) 42%, var(--line));
}

.vendor-redemption-card--completed {
  border-color: color-mix(in srgb, #37a169 42%, var(--line));
}

.vendor-redemption-actions {
  align-content: start;
  display: grid;
  gap: 0.45rem;
  grid-template-columns: 1fr;
}

.vendor-redemption-primary-action {
  justify-content: center;
  min-height: 2.9rem;
  width: 100%;
}

@media (max-width: 760px) {
  .vendor-redemption-form {
    grid-template-columns: 1fr;
  }

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

  .vendor-redemption-card {
    grid-template-columns: 1fr;
  }

  .vendor-redemption-actions {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  }

  .vendor-redemption-primary-action {
    min-height: 3.2rem;
  }
}

.wallet-overview-grid {
  align-items: stretch;
  grid-template-columns: minmax(0, 1.25fr) minmax(min(20rem, 100%), 0.75fr);
}

.wallet-overview-card--wide {
  grid-column: 1 / -1;
}

.wallet-balance-hero,
.wallet-balance-copy {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.wallet-coin-hoard {
  display: none;
  justify-items: center;
  min-width: 0;
}

.wallet-balance-ledger {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.wallet-balance-ledger div {
  position: relative;
}

.wallet-balance-ledger__icon {
  position: absolute;
  right: 0.48rem;
  top: 0.42rem;
  width: 1.55rem;
}

.wallet-card-rpg-mark {
  pointer-events: none;
  position: absolute;
  right: 0.85rem;
  top: 0.85rem;
}

.wallet-row-rpg-mark {
  pointer-events: none;
  position: absolute;
  right: 0.65rem;
  top: 0.55rem;
}

.wallet-card-rpg-mark .rpg-icon,
.wallet-row-rpg-mark .rpg-icon {
  width: 2.2rem;
}

.wallet-balance-card h2 {
  font-size: clamp(2rem, 6vw, 3rem);
  margin: 0.15rem 0;
}

.wallet-primary-actions {
  margin-top: 0.85rem;
}

.wallet-activity-row {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.25rem;
  padding: 0.65rem;
  position: relative;
}

.wallet-activity-list--compact {
  gap: 0.65rem;
}

.wallet-activity-row time,
.wallet-activity-row p {
  color: var(--muted);
  margin: 0;
}

@media (max-width: 760px) {
  .wallet-overview-grid {
    grid-template-columns: 1fr;
  }
}

.economy-admin-search {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.economy-admin-search form {
  display: flex;
  gap: 0.5rem;
  min-width: min(26rem, 100%);
}

.economy-admin-search input {
  min-width: 0;
  width: 100%;
}

.economy-admin-row {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.65rem;
}

.economy-admin-row strong,
.economy-admin-row small {
  overflow-wrap: anywhere;
}

.economy-admin-row small {
  color: var(--muted);
}

.economy-admin-gate__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.economy-admin-gate__notice {
  border: 1px solid var(--accent-2);
  color: var(--text);
  margin: 0;
  padding: 0.65rem;
}

.economy-admin-gate__notice--error {
  border-color: var(--danger);
}

.economy-admin-gate__actions button {
  min-width: 11rem;
}

.economy-admin-gate__actions button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.economy-admin-transfer-review__list {
  display: grid;
  gap: 0.5rem;
}

.economy-admin-transfer-review__history {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.5rem;
  padding-top: 0.75rem;
}

.economy-admin-transfer-review__history h3 {
  font-size: 1rem;
  margin: 0;
}

.economy-admin-transfer-review__blocked {
  display: grid;
  gap: 0.5rem;
}

.economy-admin-transfer-review__blocked summary {
  color: var(--muted);
  cursor: pointer;
}

.economy-admin-transfer-review__item {
  border: 1px solid var(--line);
  color: inherit;
  display: grid;
  gap: 0.25rem;
  min-width: 0;
  padding: 0.6rem;
}

.economy-admin-transfer-review__item a {
  color: inherit;
  text-decoration: none;
}

.economy-admin-transfer-review__item strong,
.economy-admin-transfer-review__item small {
  overflow-wrap: anywhere;
}

.economy-admin-transfer-review__item small {
  color: var(--muted);
}

.economy-admin-transfer-review__item button {
  justify-self: start;
  margin-top: 0.25rem;
}

.economy-admin-transfer-review__item label {
  display: grid;
  gap: 0.25rem;
  margin-top: 0.25rem;
  min-width: 0;
}

.economy-admin-transfer-review__item label span {
  color: var(--muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.economy-admin-transfer-review__item input {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  min-width: 0;
  padding: 0.55rem 0.65rem;
}

.economy-admin-transfer-review__item--reverse {
  background: color-mix(in srgb, var(--surface-strong) 68%, transparent);
}

.economy-admin-adjustment-form {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr));
}

.economy-admin-adjustment-form label,
.vendor-quest-controls {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.economy-admin-adjustment-form label span {
  color: var(--muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.economy-admin-adjustment-form input,
.vendor-quest-controls input {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  min-width: 0;
  padding: 0.55rem 0.65rem;
}

.economy-admin-adjustment-form__wide {
  grid-column: 1 / -1;
}

.economy-admin-adjustment-form button {
  align-self: end;
}

.vendor-quest-console,
.vendor-quest-list,
.vendor-quest-card,
.vendor-quest-grid,
.vendor-quest-mini-list,
.vendor-quest-review-list {
  display: grid;
  gap: 0.75rem;
}

.vendor-quest-controls {
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: min(30rem, 100%);
}

.vendor-quest-card {
  border: 1px solid var(--line);
  padding: 0.75rem;
}

.vendor-quest-card summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.vendor-quest-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr));
  padding-top: 0.75rem;
}

.vendor-quest-wide {
  grid-column: 1 / -1;
  overflow-x: auto;
}

.vendor-quest-mini-list article,
.vendor-quest-review-list article {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.6rem;
}

.vendor-quest-review-list article {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto;
}

.vendor-quest-mini-list strong,
.vendor-quest-mini-list span,
.vendor-quest-mini-list small,
.vendor-quest-review-list strong,
.vendor-quest-review-list span,
.vendor-quest-review-list small {
  overflow-wrap: anywhere;
}

.vendor-quest-mini-list small,
.vendor-quest-review-list small {
  color: var(--muted);
}

.vendor-quest-table {
  border-collapse: collapse;
  min-width: 42rem;
  width: 100%;
}

.vendor-quest-table th,
.vendor-quest-table td {
  border-bottom: 1px solid var(--line);
  padding: 0.5rem;
  text-align: left;
}

.transfer-surface,
.transfer-contract-card {
  display: grid;
  gap: 1rem;
}

.transfer-quick-panel {
  gap: 1rem;
}

.transfer-quick-grid {
  grid-template-columns: minmax(0, 1fr);
}

.transfer-mode-tabs {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: inline-grid;
  gap: 0.25rem;
  grid-template-columns: repeat(2, minmax(6rem, 1fr));
  padding: 0.25rem;
  width: min(100%, 22rem);
}

.transfer-mode-tabs button {
  background: transparent;
  border: 0;
  color: var(--muted);
  min-height: 2.45rem;
}

.transfer-mode-tabs button.is-active {
  background: var(--accent);
  color: var(--surface);
}

.transfer-mode-help {
  margin: 0;
}

.transfer-pending-panel {
  display: grid;
  gap: 0.85rem;
}

.transfer-workbench {
  grid-template-columns: minmax(0, 1fr);
}

.transfer-pending-search {
  display: grid;
  gap: 0.35rem;
  max-width: 42rem;
}

.transfer-pending-search span {
  color: var(--muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.transfer-pending-search input {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--text);
  min-height: 2.75rem;
  padding: 0.65rem 0.75rem;
}

.transfer-pending-list {
  display: grid;
  gap: 0.85rem;
}

.transfer-pending-group {
  display: grid;
  gap: 0.55rem;
}

.transfer-pending-group h3 {
  align-items: baseline;
  display: flex;
  gap: 0.45rem;
  margin: 0;
}

.transfer-pending-group h3 small {
  color: var(--muted);
  font-size: 0.8rem;
}

.transfer-pending-card {
  cursor: pointer;
  display: grid;
  gap: 0.75rem;
}

.transfer-simple-flow {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.transfer-simple-flow__time {
  color: var(--muted);
  font-size: 0.68rem;
  line-height: 1;
}

.transfer-simple-flow__route {
  align-items: center;
  display: grid;
  gap: 0.7rem;
  grid-template-columns: minmax(0, 1fr) minmax(5rem, auto) minmax(0, 1fr);
  min-width: 0;
}

.transfer-simple-flow__party {
  font-size: clamp(1rem, 3vw, 1.35rem);
  line-height: 1.05;
  min-width: 0;
  overflow-wrap: anywhere;
}

.transfer-simple-flow__party:last-child {
  text-align: right;
}

.transfer-simple-flow__arrow {
  align-items: center;
  color: var(--accent);
  display: grid;
  gap: 0.1rem;
  justify-items: center;
  line-height: 1;
}

.transfer-simple-flow__arrow span {
  color: var(--text);
  font-size: 0.9rem;
  font-weight: 900;
  white-space: nowrap;
}

.transfer-simple-flow__arrow b {
  font-size: 1.45rem;
  line-height: 0.75;
}

.transfer-simple-flow__state {
  color: var(--muted);
  font-size: 0.7rem;
  justify-self: end;
  text-transform: uppercase;
}

.transfer-pending-card:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.transfer-pending-card__hero {
  align-items: start;
}

.transfer-pending-card__amount {
  font-size: clamp(1.75rem, 7vw, 2.65rem);
  line-height: 0.95;
}

.transfer-pending-card__route {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.transfer-pending-card__route span {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.2rem;
  min-width: 0;
  padding: 0.55rem;
}

.transfer-pending-card__route small,
.transfer-pending-card__meta dt {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.transfer-pending-card__route strong,
.transfer-pending-card__meta dd {
  overflow-wrap: anywhere;
}

.transfer-pending-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0;
}

.transfer-pending-card__meta div {
  align-items: baseline;
  border: 1px solid var(--line);
  display: flex;
  gap: 0.35rem;
  padding: 0.35rem 0.5rem;
}

.transfer-pending-card__meta dd {
  margin: 0;
}

.transfer-pending-card__memo {
  color: var(--muted);
  margin: 0;
}

.transfer-pending-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  position: relative;
  z-index: 1;
}

.transfer-pending-actions button {
  min-height: 2.75rem;
}

.transfer-action-buttons--creator-cancel {
  grid-template-columns: minmax(0, 1fr);
}

.transfer-request-builder {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(16rem, 1.4fr) minmax(8rem, 0.45fr) auto;
}

.transfer-request-builder--quick {
  grid-template-columns: minmax(18rem, 1.3fr) minmax(8rem, 0.35fr) minmax(12rem, 0.8fr) auto;
}

.transfer-request-builder__recipient {
  position: relative;
}

.transfer-request-builder label {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.transfer-request-builder label span {
  color: var(--muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.transfer-request-builder input {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--text);
  min-width: 0;
  padding: 0.65rem 0.75rem;
}

.transfer-request-builder__recipient input {
  background:
    linear-gradient(135deg, rgba(69, 200, 159, 0.08), transparent 42%),
    var(--surface-strong);
  border-color: color-mix(in srgb, var(--accent-2) 48%, var(--line));
  font-size: 1.05rem;
  min-height: 2.85rem;
}

.transfer-request-builder__wide {
  grid-column: auto;
}

.transfer-request-builder > button {
  min-height: 2.85rem;
  white-space: nowrap;
}

.transfer-contract-card header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.transfer-party-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr));
}

.transfer-party-card {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.2rem;
  min-width: 0;
  padding: 0.75rem;
}

.transfer-party-card span,
.transfer-party-card small {
  color: var(--muted);
}

.transfer-party-card strong {
  overflow-wrap: anywhere;
}

.transfer-contract-memo {
  border-left: 3px solid var(--accent);
  color: var(--muted);
  margin: 0;
  padding: 0.65rem 0.85rem;
}

.transfer-contract-marks {
  display: grid;
  gap: 0.75rem;
}

.transfer-party-marks {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.transfer-party-mark {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.55rem;
  min-width: 0;
  padding: 0.8rem;
}

.transfer-party-mark header {
  align-items: start;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.transfer-party-mark h3,
.transfer-party-mark p {
  margin: 0;
}

.transfer-party-mark h3 {
  overflow-wrap: anywhere;
}

.transfer-party-mark p {
  color: var(--muted);
}

.transfer-party-mark--signed {
  border-color: color-mix(in srgb, #37a169 42%, var(--line));
}

.transfer-party-mark--pending {
  border-color: color-mix(in srgb, var(--accent) 42%, var(--line));
}

.transfer-party-mark--closed {
  opacity: 0.82;
}

.transfer-request-preview,
.transfer-action-preview {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.75rem;
  min-width: 0;
  padding: 0.75rem;
}

.transfer-request-preview header,
.transfer-action-preview header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.transfer-request-preview h3,
.transfer-action-preview h3 {
  font-size: 1rem;
  margin: 0.1rem 0 0;
}

.transfer-action-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.transfer-action-buttons button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.transfer-contract-inline-actions {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.8rem;
  margin-top: 1rem;
  padding-top: 1rem;
}

.transfer-response-memo {
  display: grid;
  gap: 0.35rem;
}

.transfer-response-memo textarea {
  min-height: 5rem;
  resize: vertical;
  width: 100%;
}

.transfer-share-safety {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.75rem;
  padding: 0.75rem;
}

.transfer-share-safety[hidden] {
  display: none;
}

.transfer-share-safety header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.transfer-contract-share,
.transfer-confirmation-panel {
  display: grid;
  gap: 0.85rem;
}

.transfer-share-grid {
  align-items: center;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(12rem, 16rem) minmax(0, 1fr);
}

.transfer-contract-qr {
  align-items: center;
  background: #fffaf0;
  border: 1px solid var(--line);
  display: grid;
  justify-items: center;
  min-height: 12rem;
  padding: 0.75rem;
}

.transfer-contract-qr svg {
  height: auto;
  max-width: 100%;
}

.transfer-contract-share code {
  overflow-wrap: anywhere;
  white-space: normal;
}

.signal-meter {
  align-items: center;
  display: inline-flex;
  gap: 0.22rem;
}

.signal-meter i {
  background: var(--line);
  display: inline-block;
  height: 0.55rem;
  width: 0.35rem;
}

.signal-meter i.is-on {
  background: var(--frequency-color, var(--accent));
}

.signal-meter b {
  color: var(--muted);
  font-size: 0.75rem;
  margin-left: 0.2rem;
}

.runtime-list {
  display: grid;
  gap: 0.8rem;
  margin: 0;
  padding-left: 1.1rem;
}

.runtime-feed {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.55rem;
  margin-top: 1rem;
  padding-top: 1rem;
}

.runtime-feed h3 {
  font-size: 0.9rem;
  margin: 0;
}

.runtime-feed article {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.25rem;
  padding: 0.55rem;
}

.runtime-feed small {
  color: var(--muted);
}

.console-surface {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.console-summary-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.console-toolbar {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(12rem, 1fr) repeat(3, minmax(8rem, 12rem)) auto;
}

.console-toolbar label {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
}

.console-toolbar span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.console-toolbar input,
.console-toolbar select {
  background: var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.4rem;
  padding: 0.45rem 0.55rem;
  width: 100%;
}

.compendium-toolbar,
.deck-toolbar,
.radio-toolbar,
.journal-tools,
.quest-panel-header,
.console-toolbar {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent 60%),
    color-mix(in srgb, var(--glass-strong) 90%, transparent);
  border: 1px solid var(--line-soft);
  box-shadow: 0 0.45rem 1rem rgba(0, 0, 0, 0.2);
  padding: 0.5rem;
  position: sticky;
  top: var(--route-sticky-top, 3.05rem);
  z-index: 8;
}

.journal-tools {
  align-items: end;
}

.compendium-toolbar input,
.compendium-toolbar select,
.deck-toolbar input,
.deck-toolbar select,
.radio-toolbar input,
.radio-toolbar select,
.journal-tools input,
.journal-tools select,
.console-toolbar input,
.console-toolbar select {
  min-height: 2.2rem;
  padding: 0.4rem 0.5rem;
}

.console-table-panel {
  overflow: auto;
  padding: 0;
}

.console-status-panel {
  display: grid;
  gap: 0.75rem;
}

.console-attention-panel {
  display: grid;
  gap: 0.75rem;
}

.console-status-grid {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(auto-fit, minmax(min(12rem, 100%), 1fr));
}

.console-status-card {
  border: 1px solid var(--line);
  border-left: 0.3rem solid var(--line);
  display: grid;
  gap: 0.45rem;
  min-width: 0;
  padding: 0.65rem;
}

.console-status-card > strong {
  overflow-wrap: anywhere;
}

.console-status-card--ok {
  border-left-color: var(--accent-2);
}

.console-status-card--blocked {
  border-left-color: var(--accent);
}

.console-status-card--review,
.console-status-card--critical {
  border-left-color: var(--danger);
}

.console-attention-list {
  display: grid;
  gap: 0.65rem;
}

.console-attention-item {
  align-items: start;
  background:
    linear-gradient(135deg, rgba(217, 111, 95, 0.07), transparent 45%),
    var(--surface-strong);
  border: 1px solid var(--line);
  display: grid;
  gap: 0.7rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
  padding: 0.7rem;
}

.console-attention-item strong,
.console-attention-item small,
.console-attention-item p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.console-attention-item small,
.console-attention-item p {
  color: var(--muted);
}

.console-attention-item p {
  margin: 0.25rem 0 0;
}

.console-table {
  border-collapse: collapse;
  min-width: 58rem;
  width: 100%;
}

.console-table th,
.console-table td {
  border-bottom: 1px solid var(--line);
  padding: 0.65rem;
  text-align: left;
  vertical-align: top;
}

.console-table th {
  background: var(--glass-strong);
  position: sticky;
  top: 0;
  z-index: 1;
}

.console-table th button {
  background: transparent;
  border: 0;
  color: var(--text);
  padding: 0;
  text-align: left;
}

.console-table tbody tr {
  cursor: pointer;
}

.console-table tbody tr:hover {
  background: rgba(216, 184, 90, 0.08);
}

.console-table td strong,
.console-table td small {
  display: block;
}

.console-table td small {
  color: var(--muted);
  margin-top: 0.2rem;
  max-width: 28rem;
}

.console-pill {
  border: 1px solid var(--line);
  color: var(--muted);
  display: inline-flex;
  font-size: 0.72rem;
  line-height: 1;
  padding: 0.25rem 0.4rem;
  text-transform: uppercase;
}

.console-pill--info,
.console-pill--debug,
.console-pill--success {
  border-color: var(--accent-2);
  color: var(--accent-2);
  background: rgba(69, 200, 159, 0.08);
}

.console-pill--warn {
  border-color: var(--accent);
  color: var(--accent);
  background: rgba(216, 184, 90, 0.08);
}

.console-pill--error,
.console-pill--critical {
  border-color: var(--danger);
  color: var(--danger);
  background: rgba(217, 111, 95, 0.08);
}

.console-detail {
  display: grid;
  gap: 1rem;
}

.console-detail header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.console-detail pre {
  background: #0d100c;
  border: 1px solid var(--line);
  color: var(--muted);
  margin: 0;
  max-height: 24rem;
  overflow: auto;
  padding: 0.75rem;
  white-space: pre-wrap;
}

.v6-shell {
  --shell-bottom-rail-height: 4.1rem;
  --shell-media-dock-height: 0px;
  --shell-bottom-height: calc(var(--shell-bottom-rail-height) + var(--shell-media-dock-height));
  --shell-dom-nav-height: 2.35rem;
  --shell-dom-nav-tabs-height: var(--shell-dom-nav-height);
  --shell-dom-nav-offset: 0rem;
  --shell-masthead-height: 2.45rem;
  --shell-notification-console-closed-height: 1.05rem;
  --shell-notification-console-open-height: 9.25rem;
  --shell-notification-console-height: 0rem;
  --shell-control-height: 2.75rem;
  --shell-masthead-tool-width: 2.45rem;
  --shell-tool-panel-height: var(--shell-control-height);
  --shell-top-height: calc(var(--shell-notification-console-height) + var(--shell-masthead-height));
  --route-sticky-top: 0rem;
  min-height: 100dvh;
  overflow: hidden;
}

body.has-shell-tools-open {
  --shell-top-height: calc(var(--shell-notification-console-height) + var(--shell-masthead-height) + var(--shell-tool-panel-height));
}

body.shell-notification-mode-console {
  --shell-notification-console-height: var(--shell-notification-console-closed-height);
}

body.shell-notification-mode-console.shell-notification-console-open {
  --shell-notification-console-height: var(--shell-notification-console-open-height);
}

.v6-shell .app-shell {
  display: block;
  min-height: 100dvh;
}

body.is-shell-booting .app-shell {
  opacity: 0;
  pointer-events: none;
}

.shell-loading-modal {
  align-items: center;
  background:
    radial-gradient(circle at 50% 44%, rgba(255, 255, 255, 0.08), transparent 15rem),
    #000;
  color: #fff;
  display: grid;
  inset: 0;
  justify-items: center;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transition: opacity 220ms ease, visibility 220ms ease;
  visibility: hidden;
  z-index: 1000;
}

body.is-shell-booting .shell-loading-modal {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.shell-rpg-loading-modal {
  align-items: center;
  background: rgba(5, 2, 9, 0.42);
  color: #fff7e4;
  display: grid;
  inset: 0;
  justify-items: center;
  opacity: 0;
  padding: clamp(1rem, 5vw, 2rem);
  pointer-events: none;
  position: fixed;
  visibility: hidden;
  z-index: 940;
}

.shell-rpg-loading-modal__panel {
  background:
    radial-gradient(circle at 50% 0%, rgba(229, 188, 95, 0.16), transparent 9rem),
    linear-gradient(180deg, rgba(28, 17, 47, 0.96), rgba(5, 2, 9, 0.98));
  border: 1px solid rgba(229, 188, 95, 0.36);
  border-radius: 8px;
  box-shadow:
    0 0 0 1px rgba(255, 247, 228, 0.06) inset,
    0 0 3rem rgba(142, 99, 215, 0.28),
    0 24px 70px rgba(0, 0, 0, 0.66);
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  max-width: min(24rem, 100%);
  padding: 1rem 1.15rem;
  text-align: center;
}

.shell-rpg-loading-modal__panel strong {
  color: #fff7e4;
  font-family: var(--display-font);
  font-size: clamp(1.45rem, 7vw, 2.3rem);
  line-height: 1;
}

.shell-rpg-loading-modal__panel span {
  animation: shell-loading-pulse 880ms ease-in-out infinite alternate;
  color: rgba(255, 247, 228, 0.76);
  font-size: 0.9rem;
  font-weight: 800;
}

body.shell-profile-rpg.is-rpg-page-loading .shell-layer-host {
  filter: blur(8px) saturate(0.82);
  pointer-events: none;
  transform: scale(0.992);
  user-select: none;
}

body.shell-profile-rpg.is-rpg-page-loading .shell-rpg-loading-modal {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.shell-loading-modal__mark {
  display: grid;
  gap: 0.7rem;
  justify-items: center;
  padding: 2rem;
  text-align: center;
}

.shell-loading-modal__mark strong {
  color: #fff;
  font-family: var(--brand-font);
  font-size: clamp(3rem, 14vw, 8rem);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 0.85;
  text-shadow:
    0 0 0.35rem rgba(255, 255, 255, 0.92),
    0 0 1.25rem rgba(255, 255, 255, 0.62),
    0 0 2.5rem rgba(197, 167, 255, 0.28);
}

.shell-loading-modal__mark span {
  animation: shell-loading-pulse 880ms ease-in-out infinite alternate;
  color: var(--muted);
  font-family: var(--display-font);
  font-size: clamp(0.88rem, 3.2vw, 1.1rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

@keyframes shell-loading-pulse {
  from {
    opacity: 0.32;
  }

  to {
    opacity: 1;
  }
}

.v6-shell .app-nav {
  display: none;
}

.shell-workspace {
  display: block;
  min-height: 100dvh;
  padding-block: var(--shell-top-height) var(--shell-bottom-height);
}

body.has-dom-nav .shell-workspace {
  padding-top: calc(var(--shell-top-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.has-dom-nav-rows-2 {
  --shell-dom-nav-height: 4.55rem;
}

body.has-dom-nav-rows-3 {
  --shell-dom-nav-height: 7.85rem;
}

.shell-masthead,
.shell-topbar,
.shell-bottombar {
  align-items: center;
  background: var(--console-gradient);
  backdrop-filter: var(--profile-shell-backdrop-filter);
  border-color: var(--line);
  box-shadow:
    rgba(0, 0, 0, 0.18) 0 -22px 25px 0 inset,
    rgba(0, 0, 0, 0.14) 0 -34px 30px 0 inset,
    rgba(0, 0, 0, 0.12) 0 8px 18px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 0.75rem;
  min-width: 0;
  padding: 0.65rem 0.9rem;
  position: fixed;
  z-index: 10;
}

.shell-masthead {
  background: #000;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.65);
  display: flex;
  height: var(--shell-masthead-height);
  left: 0;
  justify-content: center;
  padding: 0.12rem 0.4rem 0.18rem;
  position: fixed;
  right: 0;
  top: var(--shell-notification-console-height);
  z-index: 11;
}

.shell-notification-console {
  background: #050505;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  color: #f6f6f6;
  display: none;
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  height: var(--shell-notification-console-height);
  left: 0;
  min-width: 0;
  overflow: hidden;
  position: fixed;
  right: 0;
  top: 0;
  transition: height 180ms ease;
  z-index: 12;
}

body.shell-notification-mode-console .shell-notification-console {
  display: block;
}

.shell-notification-console-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: #fff;
  display: inline-flex;
  font-size: 0.78rem;
  height: var(--shell-notification-console-closed-height);
  justify-content: center;
  left: 50%;
  line-height: 1;
  min-height: var(--shell-notification-console-closed-height);
  padding: 0;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 2.4rem;
  z-index: 2;
}

.shell-notification-console-toggle:hover,
.shell-notification-console-toggle:focus-visible {
  background: rgba(255, 255, 255, 0.1);
  border: 0;
  box-shadow: none;
}

.shell-notification-console-panel {
  display: grid;
  gap: 0.35rem;
  grid-template-rows: auto minmax(0, 1fr);
  height: calc(var(--shell-notification-console-open-height) - var(--shell-notification-console-closed-height));
  min-height: 0;
  opacity: 0;
  padding: 0.28rem 0.6rem 0.55rem;
  pointer-events: none;
  position: absolute;
  top: var(--shell-notification-console-closed-height);
  transform: translateY(-0.35rem);
  transition: opacity 140ms ease, transform 160ms ease;
  width: 100%;
}

.shell-notification-console.is-open .shell-notification-console-panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.shell-notification-console-panel header {
  align-items: center;
  color: rgba(255, 255, 255, 0.82);
  display: flex;
  font-size: 0.7rem;
  gap: 0.6rem;
  justify-content: space-between;
  text-transform: uppercase;
}

.shell-notification-console-panel header small {
  color: rgba(255, 255, 255, 0.58);
}

.shell-notification-console-list {
  display: grid;
  gap: 0.12rem;
  min-height: 0;
  overflow: auto;
  padding-right: 0.25rem;
}

.shell-notification-console-line {
  align-items: baseline;
  background: transparent;
  border: 0;
  color: rgba(255, 255, 255, 0.86);
  display: grid;
  font-family: inherit;
  font-size: 0.72rem;
  gap: 0.45rem;
  grid-template-columns: 4.6rem 4.2rem 9rem minmax(0, 1fr);
  min-height: 1.1rem;
  padding: 0.08rem 0;
  text-align: left;
}

.shell-notification-console-line:hover,
.shell-notification-console-line:focus-visible {
  background: rgba(255, 255, 255, 0.08);
  box-shadow: none;
}

.shell-notification-console-line.is-read {
  opacity: 0.58;
}

.shell-notification-console-time,
.shell-notification-console-action,
.shell-notification-console-message {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-notification-console-time {
  color: rgba(255, 255, 255, 0.46);
}

.shell-notification-console-severity {
  color: #d8d8d8;
  font-weight: 850;
  text-transform: uppercase;
}

.shell-notification-console-severity--success {
  color: #78e6af;
}

.shell-notification-console-severity--warn {
  color: #ffd36f;
}

.shell-notification-console-severity--error {
  color: #ff8585;
}

.shell-notification-console-severity--debug {
  color: #a6b7ff;
}

.shell-notification-console-action {
  color: rgba(255, 255, 255, 0.64);
}

.shell-notification-console-empty {
  color: rgba(255, 255, 255, 0.44);
  font-size: 0.72rem;
  margin: 0;
  padding: 0.1rem 0;
  text-transform: uppercase;
}

.shell-dom-nav {
  align-items: center;
  background: rgba(4, 6, 7, 0.9);
  backdrop-filter: var(--profile-shell-backdrop-filter);
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 0.65rem;
  height: var(--shell-dom-nav-height);
  justify-content: center;
  left: 0;
  min-width: 0;
  overflow: hidden;
  padding: 0.2rem 0.65rem;
  position: fixed;
  right: 0;
  top: calc(var(--shell-top-height) + var(--shell-dom-nav-offset));
  z-index: 9;
}

.shell-dom-nav[data-dom-nav-mode="tools-only"] {
  display: none;
}

.shell-dom-nav > span {
  display: none;
}

.shell-dom-nav > div {
  align-content: center;
  display: flex;
  gap: 0.25rem;
  justify-content: stretch;
  min-width: 0;
  overflow: hidden;
  scrollbar-width: none;
  width: 100%;
  flex-wrap: wrap;
}

.shell-dom-nav[data-dom-nav-rows="3"] > div {
  align-content: stretch;
}

.shell-dom-nav > div::-webkit-scrollbar {
  display: none;
}

.shell-dom-nav button {
  background: rgba(255, 255, 255, 0.045);
  border-color: var(--line-soft);
  flex: 1 1 0;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  min-height: 1.65rem;
  min-width: 0;
  overflow: hidden;
  padding: 0.22rem 0.45rem;
  text-overflow: ellipsis;
  text-transform: uppercase;
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
  white-space: nowrap;
}

.shell-dom-nav[data-dom-nav-rows="2"] > div button,
.shell-dom-nav[data-dom-nav-rows="3"] > div button {
  flex: 1 1 calc(25% - 0.25rem);
  max-width: none;
  min-width: 0;
}

.shell-dom-nav[data-dom-nav-rows="3"] > div button {
  min-height: 1.75rem;
}

.shell-dom-nav button[aria-current="true"],
.shell-dom-nav button.is-active,
.shell-dom-nav button[aria-current="true"]:hover,
.shell-dom-nav button.is-active:hover,
.shell-dom-nav button[aria-current="true"]:focus-visible,
.shell-dom-nav button.is-active:focus-visible {
  background:
    linear-gradient(180deg, rgba(216, 184, 90, 0.34), rgba(216, 184, 90, 0.16)),
    rgba(255, 255, 255, 0.08);
  border-color: rgba(216, 184, 90, 0.92);
  color: var(--text);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.12),
    0 0 0 1px rgba(216, 184, 90, 0.2),
    0 0 20px rgba(216, 184, 90, 0.18);
  font-weight: 900;
  outline: 0;
}

.shell-dom-nav button.is-dom-nav-activated {
  transform: none;
}

.shell-diagnostics-strip {
  align-items: center;
  background: #101410;
  border-bottom: 1px solid color-mix(in srgb, var(--accent-2) 42%, var(--line));
  color: var(--muted);
  display: none;
  gap: 0.8rem;
  left: 0;
  min-height: 2.15rem;
  overflow-x: auto;
  padding: 0.35rem 0.9rem;
  position: fixed;
  right: 0;
  top: var(--shell-top-height);
  z-index: 9;
}

.shell-diagnostics-strip span {
  flex: 0 0 auto;
  font-size: 0.74rem;
  text-transform: uppercase;
}

.shell-diagnostics-strip strong {
  color: var(--accent-2);
  font-family: var(--content-font);
  font-weight: 800;
  margin-left: 0.25rem;
  text-transform: none;
}

body.shell-diagnostics-enabled {
  --shell-diagnostics-height: 2.15rem;
}

body.shell-diagnostics-enabled:not(.has-dom-nav) .shell-workspace {
  padding-top: calc(var(--shell-top-height) + var(--shell-diagnostics-height));
}

body.shell-diagnostics-enabled.has-dom-nav .shell-workspace {
  padding-top: calc(var(--shell-top-height) + var(--shell-diagnostics-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.shell-diagnostics-enabled .shell-diagnostics-strip {
  display: flex;
}

body.shell-diagnostics-enabled .shell-dom-nav {
  top: calc(var(--shell-top-height) + var(--shell-diagnostics-height) + var(--shell-dom-nav-offset));
}

body.shell-diagnostics-enabled .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-diagnostics-height) - var(--shell-bottom-height));
}

body.shell-diagnostics-enabled.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-diagnostics-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

.shell-topbar {
  border-bottom: 0;
  left: 0;
  height: 0;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  right: 0;
  top: calc(var(--shell-notification-console-height) + var(--shell-masthead-height));
}

.shell-topbar.is-tools-open {
  border-bottom: 1px solid var(--line);
  height: var(--shell-tool-panel-height);
  min-height: var(--shell-tool-panel-height);
}

.shell-tools-toggle {
  display: none;
}

.shell-bottombar {
  border-top: 1px solid var(--line);
  bottom: 0;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 8.5rem);
  justify-content: center;
  left: 0;
  min-height: var(--shell-bottom-rail-height);
  overflow: hidden;
  right: 0;
}

body.shell-admin-rail-active {
  --shell-bottom-rail-height: 7.4rem;
}

body.shell-admin-rail-active .shell-bottombar {
  grid-auto-columns: unset;
  grid-auto-flow: row;
  grid-template-columns: repeat(4, minmax(0, 8.5rem));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  justify-content: center;
  padding: 0;
}

body.shell-admin-rail-active .shell-status-cell {
  justify-content: center;
  max-width: none;
  min-height: 0;
}

.shell-tools-plain-mark {
  color: currentColor;
  font-family: var(--content-font);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.shell-admin-session .shell-masthead-tools-toggle {
  display: inline-flex;
}

@media (max-width: 720px) {
  body.shell-simple-rpg {
    --shell-bottom-rail-height: 3.45rem;
    --shell-dom-nav-height: 1.95rem;
    --shell-masthead-height: 2.15rem;
    --shell-top-height: var(--shell-masthead-height);
  }

  body.shell-simple-rpg .shell-masthead {
    min-height: var(--shell-masthead-height);
    padding-block: 0.08rem;
  }

  body.shell-simple-rpg .shell-masthead-logo {
    font-size: 0.98rem;
  }

  body.shell-simple-rpg .shell-masthead-title {
    font-size: 0.58rem;
    top: calc(50% + 0.34rem);
  }

  body.shell-simple-rpg .shell-masthead-login {
    font-size: 0.68rem;
    height: var(--shell-masthead-height);
    max-width: min(34vw, 8rem);
    padding-inline: 0.42rem;
  }

  body.shell-simple-rpg .shell-dom-nav {
    height: var(--shell-dom-nav-height);
    min-height: var(--shell-dom-nav-height);
    padding: 0.12rem 0.3rem;
  }

  body.shell-simple-rpg .shell-dom-nav > div {
    flex-wrap: wrap;
    justify-content: stretch;
    overflow: hidden;
  }

  body.shell-simple-rpg .shell-dom-nav > div button {
    flex: 1 1 0;
    font-size: 0.66rem;
    min-height: 1.55rem;
    min-width: 0;
    overflow: hidden;
    padding: 0.16rem 0.38rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.shell-simple-rpg .shell-dom-nav[data-dom-nav-rows="2"] > div button,
  body.shell-simple-rpg .shell-dom-nav[data-dom-nav-rows="3"] > div button {
    flex-basis: calc(25% - 0.25rem);
  }

  body.shell-simple-rpg .shell-bottombar {
    gap: 0.22rem;
    min-height: var(--shell-bottom-rail-height);
    padding: 0.22rem;
  }

  body.shell-simple-rpg .shell-status-cell {
    gap: 0.3rem;
    min-height: calc(var(--shell-bottom-rail-height) - 0.44rem);
    padding: 0.22rem 0.26rem;
  }

  body.shell-simple-rpg .shell-status-icon {
    font-size: 0.92rem;
    width: 1.55rem;
  }

  body.shell-simple-rpg .shell-status-icon--bazaar::before {
    height: 0.48rem;
    top: 0.3rem;
    width: 0.94rem;
  }

  body.shell-simple-rpg .shell-status-icon--bazaar::after {
    height: 0.52rem;
    top: 0.82rem;
    width: 0.78rem;
  }

  body.shell-simple-rpg .shell-status-copy {
    gap: 0;
  }

  body.shell-simple-rpg .shell-status-cell small {
    font-size: 0.56rem;
    line-height: 1;
  }

  body.shell-simple-rpg .shell-status-cell strong {
    font-size: 0.68rem;
    line-height: 1.05;
    white-space: nowrap;
  }

  body.shell-simple-rpg .app-main {
    padding: 0.62rem;
  }
}

body.shell-admin-rail-active .shell-bottombar {
  grid-auto-flow: row;
  grid-auto-rows: minmax(0, 1fr);
  grid-template-columns: repeat(auto-fit, minmax(5.8rem, 8.5rem));
  grid-template-rows: none;
}

body.shell-simple-rpg {
  --shell-bottom-rail-height: 4.35rem;
  --shell-control-height: 0rem;
  --shell-notification-console-height: 0rem;
  --shell-top-height: var(--shell-masthead-height);
}

body.shell-simple-rpg .shell-topbar,
body.shell-simple-rpg .shell-masthead-tools-toggle,
body.shell-simple-rpg .shell-notification-console,
body.shell-simple-rpg .shell-diagnostics-strip {
  display: none !important;
}

body.shell-simple-rpg .shell-masthead {
  justify-content: center;
}

body.shell-simple-rpg .shell-masthead-login {
  align-items: center;
  color: #fff;
  display: inline-flex;
  font-family: var(--content-font);
  font-size: 0.76rem;
  font-weight: 900;
  height: var(--shell-masthead-height);
  left: 0.35rem;
  max-width: min(38vw, 11rem);
  overflow: hidden;
  padding-inline: 0.55rem;
  position: fixed;
  text-overflow: ellipsis;
  top: var(--shell-notification-console-height);
  white-space: nowrap;
}

body.shell-simple-rpg .shell-masthead-login .shell-hero-label {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.shell-simple-rpg .shell-bottombar {
  grid-auto-columns: unset;
  grid-auto-flow: column;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
  min-height: var(--shell-bottom-rail-height);
}

body.shell-simple-rpg .shell-status-cell:not([data-shell-player-rail]) {
  display: none !important;
}

body.shell-simple-rpg .shell-status-cell {
  min-height: var(--shell-bottom-rail-height);
}

body.shell-simple-rpg .shell-status-cell[data-route="wallet.cfm"] small {
  color: var(--accent);
}

body.shell-simple-rpg .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height));
}

body.shell-simple-rpg .app-main {
  padding: 0.85rem;
}

body.shell-simple-rpg .page-frame {
  gap: 0.75rem;
}

body.shell-simple-rpg [data-quest-page] .quest-preview-hero,
body.shell-simple-rpg [data-offerings-page] .quest-preview-hero,
body.shell-simple-rpg [data-quest-page] .quest-wallet-preview,
body.shell-simple-rpg [data-quest-page] [data-quest-sort],
body.shell-simple-rpg [data-quest-page] [data-quest-type-filter],
body.shell-simple-rpg [data-offerings-page] [data-offering-sort],
body.shell-simple-rpg [data-offerings-page] [data-offering-filter],
body.shell-simple-rpg [data-offerings-page] [data-offering-refresh],
body.shell-simple-rpg [data-quest-page] .card-browser-mode,
body.shell-simple-rpg [data-offerings-page] .card-browser-mode,
body.shell-simple-rpg [data-wallet-page] [data-wallet-tab="activity"],
body.shell-simple-rpg [data-transfer-page] [data-shell-action-rail],
body.shell-simple-rpg [data-transfer-page] [data-transfer-qr-url],
body.shell-simple-rpg [data-transfer-page] [data-transfer-qr-url] * {
  display: none !important;
}

body.shell-simple-rpg [data-transfer-page] .transfer-share-grid .contract-list div:has([data-transfer-qr-url]),
body.shell-simple-rpg [data-transfer-page] .transfer-share-safety {
  display: none !important;
}

body.shell-simple-rpg [data-quest-page] .shell-card-browser-control-grid > label:has([data-quest-sort]),
body.shell-simple-rpg [data-quest-page] .shell-card-browser-control-grid > label:has([data-quest-type-filter]),
body.shell-simple-rpg [data-offerings-page] .shell-card-browser-control-grid > label:has([data-offering-sort]),
body.shell-simple-rpg [data-offerings-page] .shell-card-browser-control-grid > label:has([data-offering-filter]),
body.shell-simple-rpg [data-offerings-page] .shell-card-browser-control-grid > label:has(.card-browser-mode) {
  display: none !important;
}

body.shell-simple-rpg [data-quest-page] .shell-card-browser-control-grid,
body.shell-simple-rpg [data-offerings-page] .shell-card-browser-control-grid {
  grid-template-columns: minmax(0, 1fr);
}

body.shell-simple-rpg [data-wallet-identity] .nysa-info-drawer,
body.shell-simple-rpg .quest-info-drawer,
body.shell-simple-rpg .quest-receipt-drawer {
  display: none !important;
}

body.shell-simple-rpg [data-offerings-page] [data-dom-nav-section][data-dom-nav-label="Create"] {
  display: none !important;
}

body.shell-simple-rpg [data-offerings-page] [data-offering-section="Create"] {
  display: none !important;
}

body.shell-simple-rpg [data-player-extra] {
  display: none !important;
}

.shell-brand {
  align-items: center;
  display: inline-flex;
  gap: 0.7rem;
  min-width: 0;
  text-decoration: none;
}

.shell-masthead-logo {
  align-self: center;
  color: #fff;
  font-family: var(--brand-font);
  font-size: clamp(1.08rem, 1.9vw, 1.32rem);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-decoration: none;
  text-shadow:
    0 0 0.35rem rgba(255, 255, 255, 0.9),
    0 0 1rem rgba(255, 255, 255, 0.58),
    0 0 1.8rem rgba(255, 255, 255, 0.28);
  white-space: nowrap;
}

.shell-masthead-login {
  display: none;
}

.shell-member-navigation-trigger {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
  display: inline-flex;
  font-size: 1.25rem;
  height: var(--shell-masthead-height);
  justify-content: center;
  left: auto;
  line-height: 1;
  margin: 0;
  min-height: var(--shell-masthead-height);
  min-width: var(--shell-masthead-height);
  padding: 0;
  position: fixed;
  right: 0.15rem;
  top: var(--shell-notification-console-height);
  width: var(--shell-masthead-height);
  z-index: 13;
}

.shell-member-navigation-trigger:hover,
.shell-member-navigation-trigger:focus-visible {
  background: rgba(255, 255, 255, 0.1);
  border: 0;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42) inset;
  color: #fff;
}

.shell-search-button--universal {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
  display: inline-flex;
  font-size: 1.18rem;
  height: var(--shell-masthead-height);
  justify-content: center;
  margin: 0;
  min-height: var(--shell-masthead-height);
  min-width: var(--shell-masthead-height);
  padding: 0;
  position: fixed;
  right: calc(var(--shell-masthead-height) + 0.25rem);
  top: var(--shell-notification-console-height);
  width: var(--shell-masthead-height);
  z-index: 13;
}

.shell-search-button--universal:hover,
.shell-search-button--universal:focus-visible {
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.42) inset;
  color: #fff;
}

body.shell-admin-session .shell-masthead-tools-toggle {
  right: calc((var(--shell-masthead-height) * 2) + 0.35rem);
}

.shell-masthead-tools-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
  display: none;
  font-family: var(--brand-font);
  font-size: 1.42rem;
  font-weight: 900;
  height: var(--shell-masthead-height);
  justify-content: center;
  left: auto;
  line-height: 1;
  margin: 0;
  min-height: 0;
  padding: 0;
  position: fixed;
  right: calc(var(--shell-masthead-height) + 0.25rem);
  text-shadow:
    0 0 0.35rem rgba(255, 255, 255, 0.9),
    0 0 1rem rgba(255, 255, 255, 0.58),
    0 0 1.8rem rgba(255, 255, 255, 0.28);
  top: var(--shell-notification-console-height);
  width: var(--shell-masthead-height);
  z-index: 13;
}

.shell-masthead-tools-toggle[aria-expanded="true"],
.shell-masthead-tools-toggle:hover,
.shell-masthead-tools-toggle:focus-visible {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #fff;
}

.shell-tools-gear-stack {
  display: block;
  height: 1.12em;
  position: relative;
  width: 1.12em;
}

.shell-tools-gear-stack span {
  color: #fff;
  display: block;
  font-family: var(--brand-font);
  left: 50%;
  line-height: 1;
  position: absolute;
  text-shadow:
    0 0 0.26rem rgba(255, 255, 255, 0.95),
    0 0 0.78rem rgba(255, 255, 255, 0.58),
    0 0 1.35rem rgba(255, 255, 255, 0.32);
  top: 50%;
}

.shell-tools-gear-stack span:nth-child(1) {
  opacity: 0.42;
  transform: translate(-64%, -54%) scale(0.7) rotate(-18deg);
}

.shell-tools-gear-stack span:nth-child(2) {
  opacity: 0.72;
  transform: translate(-48%, -50%) scale(0.9) rotate(9deg);
}

.shell-tools-gear-stack span:nth-child(3) {
  transform: translate(-35%, -45%) scale(1.12) rotate(0deg);
}

.shell-masthead-title {
  --masthead-title-nest: 1.02rem;
  color: #8f9496;
  font-family: var(--brand-font);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  max-width: min(46vw, 22rem);
  min-width: 0;
  overflow: hidden;
  position: absolute;
  left: calc(50% + var(--masthead-title-nest));
  text-align: left;
  text-overflow: ellipsis;
  top: calc(50% + 0.42rem);
  transform: translateX(-50%);
  white-space: nowrap;
}

.shell-brand strong {
  letter-spacing: 0.02em;
}

.shell-brand span:last-child {
  display: grid;
  min-width: 0;
}

.shell-brand strong,
.shell-brand small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-brand small,
.shell-status-cell small,
.shell-search-button small {
  color: var(--muted);
}

.shell-command-cluster {
  align-items: center;
  display: block;
  height: 100%;
  min-width: 0;
  position: relative;
  width: 100%;
}

.shell-icon-button {
  align-items: center;
  aspect-ratio: 1;
  background: rgba(255, 255, 255, 0.055);
  border-color: var(--line-soft);
  border-radius: 0;
  font-weight: 800;
  height: var(--shell-control-height);
  margin: 0;
  min-height: var(--shell-control-height);
  padding: 0;
  position: absolute;
  top: 0;
  width: var(--shell-control-height);
}

.shell-command-cluster [data-shell-drawer-open="search"] {
  right: 0;
}

.shell-command-cluster [data-shell-drawer-open="nav"] {
  right: var(--shell-control-height);
}

.shell-command-cluster [data-shell-fullscreen-toggle] {
  left: var(--shell-control-height);
}

.shell-command-cluster [data-shell-drawer-open="session"] {
  left: calc(var(--shell-control-height) * 2);
}

.shell-command-cluster [data-shell-drawer-open="notifications"] {
  left: 0;
}

.shell-command-cluster [data-shell-drawer-open="settings"] {
  left: calc(var(--shell-control-height) * 3);
}

.shell-session-tool.is-guest {
  color: #ff6f6f;
}

.shell-session-tool.is-authenticated {
  color: #74a9ff;
}

.shell-session-tool__name {
  display: none;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-hero-label {
  display: none;
}

.shell-masthead-login .shell-hero-label {
  display: inline;
}

.shell-control-icon {
  display: inline-flex;
  font-size: 1.15rem;
  line-height: 1;
}

.shell-search-button {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  min-height: var(--shell-control-height);
  min-width: 0;
}

.shell-layer-host {
  display: grid;
  grid-template-areas: "main";
  height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height));
  min-height: 0;
  overflow: hidden;
}

body.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

.shell-layer-host > * {
  grid-area: main;
}

.v6-shell .app-main {
  height: 100%;
  min-height: 0;
  overflow: auto;
  padding-bottom: 1.6rem;
}

.shell-status-cell {
  align-items: center;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent),
    rgba(4, 7, 7, 0.72);
  border: 1px solid var(--line-soft);
  color: var(--text);
  display: flex;
  gap: 0.5rem;
  min-height: 2.7rem;
  min-width: 0;
  padding: 0.45rem 0.6rem;
  text-align: left;
  text-decoration: none;
}

.shell-status-cell--admin {
  max-width: 7.25rem;
}

.shell-status-icon {
  align-items: center;
  aspect-ratio: 1;
  border: 1px solid var(--line-soft);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 1.15rem;
  justify-content: center;
  line-height: 1;
  width: 2rem;
}

.shell-status-icon--compendium {
  position: relative;
}

.shell-card-stack {
  display: block;
  height: 0.92em;
  position: relative;
  width: 0.78em;
}

.shell-card-stack span {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.22), transparent 42%),
    rgba(255, 221, 149, 0.12);
  border: 0.065em solid currentColor;
  box-shadow: 0 0 0.16em rgba(255, 221, 149, 0.16);
  display: block;
  height: 0.72em;
  left: 50%;
  position: absolute;
  top: 50%;
  transform-origin: 50% 85%;
  width: 0.5em;
}

.shell-card-stack span:nth-child(1) {
  opacity: 0.68;
  transform: translate(-74%, -50%) rotate(-15deg);
}

.shell-card-stack span:nth-child(2) {
  opacity: 0.82;
  transform: translate(-50%, -54%) rotate(0deg);
}

.shell-card-stack span:nth-child(3) {
  transform: translate(-26%, -50%) rotate(15deg);
}

.shell-layered-glyph {
  position: relative;
}

.shell-layered-glyph > span {
  display: block;
  left: 50%;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.shell-layered-glyph > span:nth-child(1) {
  opacity: 0.46;
  transform: translate(-62%, -54%) scale(0.86);
}

.shell-layered-glyph > span:nth-child(2) {
  opacity: 0.74;
  transform: translate(-48%, -50%) scale(1);
}

.shell-layered-glyph > span:nth-child(3) {
  filter: drop-shadow(0 0 0.12em rgba(255, 221, 149, 0.45));
  transform: translate(-38%, -46%) scale(1.08);
}

.shell-status-copy {
  display: grid;
  gap: 0.08rem;
  min-width: 0;
}

.shell-status-cell strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shell-status-cell:hover,
.shell-status-cell[aria-current="page"] {
  border-color: rgba(69, 200, 159, 0.62);
  box-shadow: 0 0 18px rgba(69, 200, 159, 0.12);
}

.shell-status-icon--bazaar,
.shell-status-icon--journal {
  color: var(--accent);
  position: relative;
}

.shell-status-icon--bazaar {
  font-size: 0;
}

.shell-status-icon--bazaar::before {
  background:
    repeating-linear-gradient(90deg, currentColor 0 0.18rem, transparent 0.18rem 0.34rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent);
  border: 0.08rem solid currentColor;
  border-bottom: 0;
  border-radius: 0.4rem 0.4rem 0.12rem 0.12rem;
  content: "";
  height: 0.7rem;
  position: absolute;
  top: 0.42rem;
  width: 1.25rem;
}

.shell-status-icon--bazaar::after {
  border: 0.08rem solid currentColor;
  border-top-width: 0.16rem;
  border-radius: 0.08rem;
  content: "";
  height: 0.76rem;
  position: absolute;
  top: 1.12rem;
  width: 1rem;
}

.shell-status-icon--journal {
  font-size: 0;
}

.shell-status-icon--journal::before {
  background:
    linear-gradient(90deg, transparent 0.2rem, currentColor 0.2rem 0.26rem, transparent 0.26rem),
    repeating-linear-gradient(180deg, transparent 0 0.24rem, currentColor 0.24rem 0.3rem);
  border: 0.08rem solid currentColor;
  border-radius: 0.1rem 0.32rem 0.14rem 0.1rem;
  content: "";
  height: 1.2rem;
  position: absolute;
  transform: rotate(-5deg);
  width: 0.94rem;
}

.shell-status-icon--journal::after {
  border: 0.08rem solid currentColor;
  border-left: 0;
  border-radius: 0 0.24rem 0.24rem 0;
  content: "";
  height: 0.92rem;
  position: absolute;
  right: 0.56rem;
  transform: rotate(-5deg);
  width: 0.2rem;
}

.shell-drawer-mode {
  display: grid;
  gap: 1rem;
}

.shell-session-panel {
  display: grid;
  gap: 1rem;
}

.shell-session-card {
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(197, 167, 255, 0.22);
  display: grid;
  gap: 0.75rem;
  padding: 0.85rem;
}

.shell-session-card h3 {
  color: var(--accent);
  font-family: var(--display-font);
  font-size: clamp(1.35rem, 4vw, 2.2rem);
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
}

.shell-session-card dl {
  display: grid;
  gap: 0.45rem;
  margin: 0;
}

.shell-session-card div {
  display: grid;
  gap: 0.18rem;
  grid-template-columns: minmax(6.5rem, 0.35fr) minmax(0, 1fr);
}

.shell-session-card dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.shell-session-card dd {
  color: var(--text);
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-acting-as-picker,
.shell-acting-as-group,
.shell-acting-as-group > div {
  display: grid;
  gap: 0.7rem;
}

.shell-acting-as-picker > header {
  align-items: end;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}

.shell-acting-as-picker :is(h3, h4, p) {
  margin: 0;
}

.shell-acting-as-picker > header > small {
  color: var(--muted);
  max-width: 18rem;
  text-align: right;
}

.shell-acting-as-group h4 {
  color: var(--muted);
  font-size: 0.74rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shell-acting-as-candidate {
  align-items: center;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(197, 167, 255, 0.18);
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 2.65rem minmax(0, 1fr) auto;
  padding: 0.6rem;
}

.shell-acting-as-candidate.is-current {
  border-color: var(--accent);
}

.shell-acting-as-candidate__art {
  background-color: rgba(255, 255, 255, 0.08);
  background-position: center;
  background-size: cover;
  border-radius: 50%;
  height: 2.65rem;
  width: 2.65rem;
}

.shell-acting-as-candidate > div {
  display: grid;
  min-width: 0;
}

.shell-acting-as-candidate strong,
.shell-acting-as-candidate small {
  overflow-wrap: anywhere;
}

.shell-hero-context {
  color: var(--muted);
  display: block;
  font-size: 0.62rem;
  line-height: 1.1;
}

.character-home__acting-banner {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.character-home__acting-banner p {
  margin: 0.25rem 0 0;
}

@media (max-width: 520px) {
  .shell-acting-as-picker > header,
  .character-home__acting-banner {
    align-items: stretch;
    display: grid;
  }

  .shell-acting-as-picker > header > small {
    text-align: left;
  }

  .shell-acting-as-candidate {
    grid-template-columns: 2.5rem minmax(0, 1fr);
  }

  .shell-acting-as-candidate > :is(button, .nysa-state-pill) {
    grid-column: 1 / -1;
    width: 100%;
  }
}

.shell-login-brand {
  color: var(--accent);
  font-family: var(--display-font);
  font-size: clamp(2.2rem, 9vw, 4.4rem);
  letter-spacing: 0;
  line-height: 0.9;
  text-align: center;
}

.shell-create-account-button {
  width: 100%;
}

.festival-signup-form,
.festival-vendor-fields {
  display: grid;
  gap: 0.7rem;
}

.festival-signup-form label,
.festival-signup-checks {
  display: grid;
  gap: 0.3rem;
}

.festival-signup-form label span,
.festival-signup-checks legend {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.festival-signup-form input,
.festival-signup-form select,
.festival-signup-form textarea {
  background: rgba(0, 0, 0, 0.48);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.55rem;
  padding: 0.55rem 0.65rem;
  width: 100%;
}

.festival-signup-grid {
  display: grid;
  gap: 0.7rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
}

.festival-signup-tier {
  border: 1px solid var(--line);
  display: grid;
  gap: 0.5rem;
  margin: 0;
  min-width: 0;
  padding: 0.7rem;
}

.festival-signup-tier legend {
  color: var(--muted);
  font-size: 0.72rem;
  padding: 0 0.25rem;
  text-transform: uppercase;
}

.festival-signup-tier > .muted {
  margin: 0 0 0.2rem;
}

.festival-signup-tier label,
.festival-signup-confirmation {
  align-items: flex-start;
  border: 1px solid var(--line-soft, var(--line));
  border-radius: 0.55rem;
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 0.65rem;
}

.festival-signup-tier label:has(input:checked),
.festival-signup-confirmation:has(input:checked) {
  background: rgba(255, 255, 255, 0.055);
  border-color: var(--accent-2);
}

.festival-signup-form .festival-signup-tier input,
.festival-signup-form .festival-signup-confirmation input {
  accent-color: var(--accent-2);
  flex: 0 0 1.1rem;
  margin: 0.15rem 0 0;
  min-height: 1.1rem;
  padding: 0;
  width: 1.1rem;
}

.festival-signup-tier label strong {
  flex: 0 0 auto;
}

@media (max-width: 560px) {
  .festival-signup-tier,
  .festival-signup-tier label,
  .festival-signup-confirmation {
    max-width: 100%;
  }

  .festival-signup-tier label,
  .festival-signup-confirmation {
    padding: 0.75rem 0.65rem;
  }
}

.festival-signup-checks {
  border: 1px solid var(--line);
  margin: 0;
  padding: 0.65rem;
}

.festival-signup-checks label,
.festival-signup-inline {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}

.festival-signup-checks input,
.festival-signup-inline input {
  min-height: 1rem;
  width: auto;
}

.festival-vendor-fields {
  border-left: 0.24rem solid var(--accent-2);
  padding-left: 0.7rem;
}

.shell-drawer-nav .nav-list {
  display: grid;
  gap: 1rem;
}

.shell-search-field {
  display: grid;
  gap: 0.35rem;
}

.shell-search-field span {
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.shell-search-field input {
  background: rgba(0, 0, 0, 0.48);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: 2.65rem;
  padding: 0.55rem 0.65rem;
  width: 100%;
}

.shell-search-results,
.shell-result-group,
.runtime-list,
.runtime-feed {
  display: grid;
  gap: 0.65rem;
}

.shell-result-group h3,
.runtime-feed h3 {
  color: var(--accent-2);
  font-size: 0.78rem;
  letter-spacing: 0;
  margin: 0;
  text-transform: uppercase;
}

.shell-result-group a,
.shell-result-group button,
.runtime-list article,
.runtime-feed article {
  align-items: start;
  background:
    linear-gradient(135deg, rgba(69, 200, 159, 0.055), transparent 42%),
    var(--surface-strong);
  border: 1px solid var(--line);
  color: var(--text);
  display: grid;
  gap: 0.2rem;
  justify-content: stretch;
  padding: 0.65rem 0.75rem;
  text-align: left;
  text-decoration: none;
}

.shell-result-group small,
.runtime-list small,
.runtime-feed small {
  color: var(--muted);
}

.shell-settings-section,
.shell-profile-picker,
.shell-settings-readout,
.shell-notification-settings {
  display: grid;
  gap: 0.65rem;
}

.shell-settings-section {
  border-bottom: 1px solid var(--line);
  padding-bottom: 0.9rem;
}

.shell-settings-section header {
  display: grid;
  gap: 0.18rem;
}

.shell-settings-section h3,
.shell-settings-section h4 {
  color: var(--accent-2);
  font-size: 0.78rem;
  letter-spacing: 0;
  margin: 0;
  text-transform: uppercase;
}

.shell-settings-section p {
  color: var(--muted);
  margin: 0;
}

.shell-profile-option {
  align-items: start;
  background:
    linear-gradient(135deg, rgba(69, 200, 159, 0.055), transparent 42%),
    var(--surface-strong);
  border: 1px solid var(--line);
  cursor: pointer;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 0.75rem;
}

.shell-profile-option.is-active {
  border-color: color-mix(in srgb, var(--accent-2) 68%, var(--line));
  box-shadow: inset 0.25rem 0 0 var(--accent-2);
}

.shell-profile-option input {
  margin-top: 0.25rem;
}

.shell-profile-option strong,
.shell-profile-option small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-profile-option small {
  color: var(--muted);
  margin-top: 0.18rem;
}

.shell-settings-check-grid {
  display: grid;
  gap: 0.5rem;
}

.shell-settings-check {
  align-items: start;
  background: var(--surface-strong);
  border: 1px solid var(--line);
  cursor: pointer;
  display: grid;
  gap: 0.55rem;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 0.62rem 0.7rem;
}

.shell-settings-check.is-active {
  border-color: color-mix(in srgb, var(--accent-2) 58%, var(--line));
  box-shadow: inset 0.2rem 0 0 var(--accent-2);
}

.shell-settings-check input {
  margin-top: 0.22rem;
}

.shell-settings-check strong,
.shell-settings-check small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.shell-settings-check small {
  color: var(--muted);
  margin-top: 0.16rem;
}

.shell-settings-readout {
  margin-top: 0.25rem;
}

.shell-settings-readout h3 {
  color: var(--accent-2);
  font-size: 0.78rem;
  margin: 0;
  text-transform: uppercase;
}

body.shell-size-super {
  --shell-dom-nav-height: 3.45rem;
  --route-sticky-top: 0rem;
}

body.shell-size-super.has-dom-nav-rows-2 {
  --shell-dom-nav-height: 5.95rem;
}

body.shell-size-super.has-dom-nav-rows-3 {
  --shell-dom-nav-height: 8.45rem;
}

body.shell-size-super .app-main {
  font-size: 1.08rem;
}

body.shell-size-super .shell-dom-nav {
  padding: 0.42rem 0.75rem;
}

body.shell-size-super .shell-dom-nav button {
  font-size: 0.98rem;
  min-height: 2.55rem;
  padding: 0.55rem 0.8rem;
}

body.shell-size-super button,
body.shell-size-super .button,
body.shell-size-super input,
body.shell-size-super select,
body.shell-size-super textarea {
  font-size: 1.05rem;
  min-height: 2.85rem;
}

body.shell-size-super .surface-panel,
body.shell-size-super .state-box,
body.shell-size-super .nysa-compact-card,
body.shell-size-super .home-quest-card,
body.shell-size-super .home-notification-item,
body.shell-size-super .transfer-pending-card,
body.shell-size-super .quest-card--player {
  padding: 1rem;
}

body.shell-size-super .route-template,
body.shell-size-super .page-frame,
body.shell-size-super .home-dashboard,
body.shell-size-super .home-dashboard-grid,
body.shell-size-super .wallet-grid,
body.shell-size-super .quest-list,
body.shell-size-super .runtime-feed,
body.shell-size-super .runtime-list {
  gap: 1.2rem;
}

body.shell-size-super .journal-tabs {
  gap: 0.65rem;
  padding: 0.55rem;
}

body.shell-size-super .journal-tabs button {
  font-size: 1rem;
  min-height: 2.85rem;
  padding-inline: 0.9rem;
}

body.shell-size-super .quest-card--player h3,
body.shell-size-super .home-status-card h2,
body.shell-size-super .wallet-balance-card h2,
body.shell-size-super .transfer-quick-panel h2,
body.shell-size-super .surface-panel > header :is(h2, h3) {
  font-size: 1.24em;
  line-height: 1.12;
}

body.shell-size-super .muted,
body.shell-size-super .contract-list dt,
body.shell-size-super .eyebrow {
  font-size: 0.95em;
}

@media (max-width: 720px) {
  body.shell-size-super {
    --shell-dom-nav-height: 3.75rem;
  }

  body.shell-size-super .app-main {
    font-size: 1.12rem;
  }

  body.shell-size-super .shell-dom-nav button {
    font-size: 1.02rem;
    min-height: 2.85rem;
    padding: 0.62rem 0.88rem;
  }

  body.shell-size-super .surface-panel,
  body.shell-size-super .state-box,
  body.shell-size-super .nysa-compact-card,
  body.shell-size-super .home-quest-card,
  body.shell-size-super .home-notification-item,
  body.shell-size-super .transfer-pending-card,
  body.shell-size-super .quest-card--player {
    padding: 1.08rem;
  }

  body.shell-size-super .journal-tabs button {
    font-size: 1.04rem;
    min-height: 3rem;
  }
}

@media (max-width: 760px) {
  .offering-display-grid {
    grid-template-columns: 1fr;
  }

  .offering-display-code {
    min-height: auto;
  }

  .offering-display-copy h1 {
    font-size: 2.4rem;
  }
}

body.shell-profile-classic {
  --profile-radius: 7px;
  --profile-card-padding: 0.85rem;
  --profile-control-min-height: 2.35rem;
  --profile-content-density: 1;
  --profile-shell-backdrop-filter: blur(14px) saturate(1.08);
  --profile-card-shadow: var(--soft-shadow);
  --profile-route-gap: 1rem;
  --profile-grid-gap: 0.85rem;
}

body.shell-profile-classic:not(.shell-admin-rail-active) .shell-bottombar {
  grid-auto-columns: minmax(0, 8.5rem);
  gap: 0.35rem;
  padding: 0.35rem;
}

body.shell-admin-rail-active.shell-profile-classic .shell-bottombar {
  gap: 0.4rem;
  grid-template-columns: repeat(auto-fit, minmax(6rem, 8.25rem));
  padding: 0.4rem;
}

body.shell-profile-classic .shell-status-cell {
  gap: 0.45rem;
  min-height: 0;
  padding: 0.42rem 0.55rem;
}

body.shell-profile-classic .shell-status-icon {
  width: 1.9rem;
}

body.shell-profile-classic .shell-status-copy {
  line-height: 1.08;
}

body.shell-profile-classic .shell-status-cell small {
  font-size: 0.68rem;
}

body.shell-profile-classic .shell-status-cell strong {
  font-size: 0.82rem;
}

body.shell-profile-diagnostic {
  --accent: #87d7ff;
  --accent-2: #a9ffcf;
  --surface: rgba(8, 10, 12, 0.96);
  --surface-strong: rgba(14, 17, 21, 0.98);
  --glass: rgba(8, 10, 12, 0.96);
  --glass-strong: rgba(8, 10, 12, 0.99);
  --line: rgba(255, 255, 255, 0.24);
  --line-soft: rgba(255, 255, 255, 0.14);
  --muted: rgba(238, 244, 250, 0.72);
  --console-gradient: linear-gradient(180deg, rgba(12, 17, 22, 0.98), rgba(3, 5, 7, 0.98));
  --profile-radius: 4px;
  --profile-card-padding: 0.7rem;
  --profile-control-min-height: 2.25rem;
  --profile-content-density: 0.88;
  --profile-shell-backdrop-filter: none;
  --profile-card-shadow: none;
  --profile-route-gap: 0.7rem;
  --profile-grid-gap: 0.6rem;
  --brand-font: Arial, Helvetica, sans-serif;
  --content-font: Arial, Helvetica, sans-serif;
  --display-font: Arial, Helvetica, sans-serif;
  background: #050608;
  font-family: Arial, Helvetica, sans-serif;
}

body.shell-profile-diagnostic:not(.shell-admin-rail-active) .shell-bottombar {
  grid-auto-columns: minmax(0, 7.4rem);
  gap: 0.22rem;
  padding: 0.28rem;
}

body.shell-admin-rail-active.shell-profile-diagnostic .shell-bottombar {
  gap: 0.24rem;
  grid-template-columns: repeat(auto-fit, minmax(5.25rem, 7.25rem));
  padding: 0.3rem;
}

body.shell-profile-diagnostic .shell-status-cell {
  background: #06080a;
  border-color: rgba(255, 255, 255, 0.28);
  gap: 0.35rem;
  min-height: 0;
  padding: 0.34rem 0.42rem;
}

body.shell-profile-diagnostic .shell-status-icon {
  background: #020304;
  border-color: rgba(169, 255, 207, 0.28);
  color: var(--accent-2);
  font-size: 0.92rem;
  width: 1.55rem;
}

body.shell-profile-diagnostic .shell-status-copy {
  gap: 0;
  line-height: 1.02;
}

body.shell-profile-diagnostic .shell-status-cell small {
  color: rgba(135, 215, 255, 0.82);
  font-size: 0.58rem;
  font-weight: 800;
  text-transform: uppercase;
}

body.shell-profile-diagnostic .shell-status-cell strong {
  color: #f3fff8;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.72rem;
  font-weight: 800;
}

body.shell-profile-diagnostic .shell-workspace,
body.shell-profile-diagnostic .shell-topbar,
body.shell-profile-diagnostic .shell-masthead,
body.shell-profile-diagnostic .shell-bottombar,
body.shell-profile-diagnostic .shell-dom-nav,
body.shell-profile-diagnostic .drawer,
body.shell-profile-diagnostic .inspector {
  box-shadow: none;
}

body.shell-profile-diagnostic .surface-panel,
body.shell-profile-diagnostic .state-box,
body.shell-profile-diagnostic .nysa-compact-card,
body.shell-profile-diagnostic .home-quest-card,
body.shell-profile-diagnostic .home-notification-item,
body.shell-profile-diagnostic .quest-card--player,
body.shell-profile-diagnostic .quest-admin-row,
body.shell-profile-diagnostic .runtime-feed article,
body.shell-profile-diagnostic .runtime-list article {
  background: var(--surface);
  box-shadow: none;
}

body.shell-profile-diagnostic :is(.muted, small, .contract-list dt, .eyebrow) {
  color: var(--muted);
}

body.shell-profile-diagnostic .diagnostic-pill,
body.shell-profile-diagnostic .shell-diagnostics-strip span {
  font-family: Arial, Helvetica, sans-serif;
}

body.shell-profile-diagnostic :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  .shell-journal-index-row__copy strong,
  .quest-index-row__copy strong,
  .home-quest-card h3,
  .quest-card h3,
  .surface-panel > header :is(h2, h3),
  .shell-brand strong,
  .shell-masthead-logo
) {
  font-family: Arial, Helvetica, sans-serif;
}

body.shell-profile-diagnostic :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.nysa-info-drawer, .quest-info-drawer, .radio-diagnostics, .deck-diagnostics) {
  display: block;
}

body.shell-profile-diagnostic :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) details:not([open]) > :not(summary) {
  display: block;
}

body.shell-profile-diagnostic :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.quest-card__summary, .muted, .contract-list, .diagnostic-pill, .console-pill, .nysa-state-pill) {
  font-family: Arial, Helvetica, sans-serif;
}

body.shell-profile-diagnostic :is(.quest-card-actions, .transfer-pending-actions, .transfer-action-buttons) {
  gap: 0.35rem;
}

body.shell-profile-diagnostic :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) {
  --profile-route-gap: 0.65rem;
  --profile-grid-gap: 0.55rem;
}

body.shell-profile-diagnostic :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.surface-panel, .nysa-compact-card, .quest-admin-panel, .quest-admin-row, .economy-admin-row, .admin-ops-row, .quest-web-forge-web-card) {
  background: #06080a;
  border-color: rgba(255, 255, 255, 0.28);
  box-shadow: none;
}

body.shell-profile-diagnostic :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.quest-admin-compact-list, .quest-admin-mini-list, .wallet-activity-list, .admin-ops-table-grid) {
  gap: 0.4rem;
}

body.shell-profile-diagnostic :is(.quest-admin-create-form, .quest-admin-editor-form, .economy-admin-adjustment-form, .admin-connected-editor, .admin-password-reset-form) {
  gap: 0.55rem;
}

body.shell-profile-diagnostic :is([data-home-dashboard], [data-compendium]) {
  --profile-route-gap: 0.65rem;
  --profile-grid-gap: 0.55rem;
}

body.shell-profile-diagnostic :is([data-home-dashboard], [data-compendium]) :is(.surface-panel, .home-quest-card, .home-notification-item, .shell-journal-index, .shell-journal-detail) {
  background: #06080a;
  border-color: rgba(255, 255, 255, 0.28);
  box-shadow: none;
}

body.shell-profile-diagnostic [data-compendium] .compendium-journal-card-detail {
  grid-template-columns: minmax(10rem, 0.38fr) minmax(0, 1fr);
}

body.shell-profile-diagnostic [data-compendium] .compendium-journal-card-meta .contract-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.shell-profile-diagnostic [data-compendium] :is(.shell-journal-index-row__copy strong, .shell-journal-index-row__copy small) {
  font-family: Arial, Helvetica, sans-serif;
}

body.shell-profile-rpg {
  /* Profiles skin the shared shell. They must not redefine shell rail geometry,
     fixed positioning, route ownership, or drawer/inspector structure. */
  --rpg-ink: #07030b;
  --rpg-ink-2: #120719;
  --rpg-panel: rgba(10, 6, 20, 0.9);
  --rpg-panel-strong: rgba(17, 10, 29, 0.96);
  --rpg-purple: #8e63d7;
  --rpg-purple-soft: #c5a7ff;
  --rpg-violet-shadow: #2b1746;
  --rpg-night-blue: #111d35;
  --rpg-moon-blue: #8fa7e8;
  --rpg-gold: #e5bc5f;
  --rpg-gold-soft: #f3d993;
  --rpg-line: rgba(197, 167, 255, 0.3);
  --rpg-gold-line: rgba(229, 188, 95, 0.26);
  --rpg-line-soft: rgba(197, 167, 255, 0.2);
  --accent: var(--rpg-gold);
  --accent-2: var(--rpg-purple-soft);
  --surface: var(--rpg-panel);
  --surface-strong: var(--rpg-panel-strong);
  --glass: rgba(7, 3, 11, 0.76);
  --glass-strong: rgba(8, 4, 13, 0.94);
  --line: var(--rpg-line);
  --line-soft: var(--rpg-line-soft);
  --muted: rgba(211, 199, 231, 0.74);
  --console-gradient:
    linear-gradient(180deg, rgba(30, 20, 50, 0.92), rgba(8, 3, 13, 0.94));
  background:
    linear-gradient(180deg, rgba(7, 3, 11, 0.54), rgba(7, 3, 11, 0.9)),
    radial-gradient(circle at 50% 14%, rgba(143, 167, 232, 0.16), transparent 26rem),
    radial-gradient(circle at 14% 28%, rgba(142, 99, 215, 0.28), transparent 30rem),
    url("../img/bg/nysa-deepwood-bg-web-L.jpg") center / cover fixed,
    #07030b;
  color: #fff7e4;
}

body.shell-profile-rpg::before {
  background:
    linear-gradient(90deg, rgba(7, 3, 11, 0.76), transparent 24%, transparent 76%, rgba(7, 3, 11, 0.76)),
    linear-gradient(0deg, rgba(7, 3, 11, 0.78), transparent 30%, rgba(7, 3, 11, 0.34));
  content: "";
  inset: 0;
  pointer-events: none;
  position: fixed;
  z-index: -1;
}

body.shell-profile-rpg .shell-workspace {
  background:
    radial-gradient(circle at 50% 0%, rgba(143, 167, 232, 0.1), transparent 18rem),
    linear-gradient(180deg, rgba(7, 3, 11, 0.18), rgba(7, 3, 11, 0.42));
}

body.shell-profile-rpg .shell-topbar,
body.shell-profile-rpg .shell-masthead,
body.shell-profile-rpg .shell-bottombar,
body.shell-profile-rpg .shell-dom-nav,
body.shell-profile-rpg .drawer,
body.shell-profile-rpg .inspector {
  background:
    linear-gradient(180deg, rgba(42, 30, 70, 0.22), transparent 70%),
    rgba(7, 3, 11, 0.9);
  border-color: var(--rpg-line);
  box-shadow:
    0 0 0 1px rgba(197, 167, 255, 0.07) inset,
    0 18px 48px rgba(0, 0, 0, 0.45);
}

body.shell-profile-rpg .shell-topbar {
  border-bottom-color: rgba(197, 167, 255, 0.34);
}

body.shell-profile-rpg .shell-masthead {
  background: #000;
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

body.shell-profile-rpg .shell-masthead-logo {
  color: #fff;
  text-shadow:
    0 0 0.4rem rgba(255, 255, 255, 0.92),
    0 0 1.2rem rgba(255, 255, 255, 0.62),
    0 0 2rem rgba(197, 167, 255, 0.32);
}

body.shell-profile-rpg .shell-masthead-tools-toggle,
body.shell-profile-rpg .shell-masthead-tools-toggle:hover,
body.shell-profile-rpg .shell-masthead-tools-toggle:focus-visible,
body.shell-profile-rpg .shell-masthead-tools-toggle[aria-expanded="true"] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
}

body.shell-profile-rpg .shell-bottombar {
  border-top-color: rgba(197, 167, 255, 0.34);
}

body.shell-profile-rpg .brand-sigil {
  background:
    radial-gradient(circle at 36% 18%, rgba(255, 255, 255, 0.38), transparent 32%),
    linear-gradient(145deg, var(--rpg-gold-soft), #a66a23 72%);
  box-shadow: 0 0 24px rgba(229, 188, 95, 0.28), 0 0 42px rgba(142, 99, 215, 0.18);
  color: #120719;
}

body.shell-profile-rpg .shell-brand strong {
  color: var(--rpg-gold-soft);
  text-shadow: 0 0 18px rgba(229, 188, 95, 0.2);
}

body.shell-profile-rpg .shell-brand small {
  color: rgba(197, 167, 255, 0.82);
}

body.shell-profile-rpg button,
body.shell-profile-rpg .button,
body.shell-profile-rpg input,
body.shell-profile-rpg select,
body.shell-profile-rpg textarea,
body.shell-profile-rpg .shell-status-cell,
body.shell-profile-rpg .shell-result-group a,
body.shell-profile-rpg .shell-result-group button,
body.shell-profile-rpg .runtime-list article,
body.shell-profile-rpg .runtime-feed article {
  background:
    linear-gradient(180deg, rgba(143, 167, 232, 0.08), rgba(142, 99, 215, 0.035) 74%),
    rgba(11, 7, 20, 0.88);
  border-color: var(--rpg-line);
  border-radius: 7px;
  color: #fff7e4;
}

body.shell-profile-rpg button:hover,
body.shell-profile-rpg .button:hover,
body.shell-profile-rpg .shell-status-cell:hover,
body.shell-profile-rpg .shell-status-cell[aria-current="page"] {
  background:
    linear-gradient(180deg, rgba(143, 167, 232, 0.14), rgba(142, 99, 215, 0.12)),
    rgba(18, 10, 30, 0.96);
  border-color: rgba(197, 167, 255, 0.62);
  box-shadow: 0 0 22px rgba(142, 99, 215, 0.16), inset 0 0 0 1px rgba(229, 188, 95, 0.08);
}

body.shell-profile-rpg .shell-masthead-login {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body.shell-profile-rpg .shell-masthead-login:hover {
  background: transparent;
  border: 0;
  box-shadow: none;
}

body.shell-profile-rpg [data-shell-fullscreen-toggle].is-active .shell-control-icon {
  color: var(--rpg-gold-soft);
  text-shadow: 0 0 12px rgba(229, 188, 95, 0.34);
}

body.shell-profile-rpg .shell-hero-button {
  border-radius: 0;
}

body.shell-profile-rpg .shell-icon-button {
  border-radius: 0;
  font-size: 0;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

body.shell-profile-rpg .shell-control-icon {
  color: var(--rpg-gold-soft);
  font-size: 1.28rem;
  text-shadow: 0 0 14px rgba(229, 188, 95, 0.2);
}

body.shell-profile-rpg .shell-dom-nav button {
  border-radius: 0;
}

body.shell-profile-rpg .shell-hero-button.is-guest {
  background: transparent;
  border: 0 !important;
  box-shadow: none;
  color: #fff;
}

body.shell-profile-rpg .shell-hero-button.is-guest .shell-control-icon {
  color: #fff;
  text-shadow: none;
}

body.shell-profile-rpg .shell-hero-button.is-authenticated {
  background: transparent;
  border: 0 !important;
  box-shadow: none;
  color: #fff;
}

body.shell-profile-rpg .shell-hero-button.is-authenticated .shell-control-icon {
  color: #fff;
  text-shadow: none;
}

body.shell-profile-rpg .shell-search-button {
  border-radius: 0;
  min-width: 0;
}

body.shell-profile-rpg .shell-search-button span {
  color: var(--rpg-gold-soft);
  font-weight: 900;
}

body.shell-profile-rpg .shell-search-button small,
body.shell-profile-rpg .shell-status-cell small {
  color: rgba(197, 167, 255, 0.86);
  font-weight: 850;
}

body.shell-profile-rpg .shell-status-cell strong {
  color: #fff7e4;
}

body.shell-profile-rpg .shell-status-cell {
  align-items: center;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  display: grid;
  gap: 0;
  justify-items: center;
  min-height: 3.55rem;
  padding: 0;
  text-align: center;
}

body.shell-profile-rpg .shell-status-icon {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--rpg-gold-soft);
  font-size: 2.9rem;
  width: min(3.25rem, 100%);
}

body.shell-profile-rpg .shell-status-cell:hover,
body.shell-profile-rpg .shell-status-cell[aria-current="page"] {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

body.shell-profile-rpg .shell-status-copy {
  display: grid;
  gap: 0;
  justify-items: center;
  line-height: 1;
  margin-top: -0.08rem;
  max-width: 100%;
  min-width: 0;
}

body.shell-profile-rpg .shell-status-cell small {
  display: block;
  font-size: 0.62rem;
  line-height: 1;
  max-width: 100%;
  overflow: hidden;
  text-transform: uppercase;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.shell-profile-rpg .shell-status-cell strong {
  display: none;
}

body.shell-profile-rpg .shell-bottombar {
  grid-auto-columns: unset;
  grid-auto-flow: row;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
}

body.shell-profile-rpg .shell-status-icon--bazaar,
body.shell-profile-rpg .shell-status-icon--journal {
  color: var(--rpg-gold-soft);
  text-shadow: 0 0 14px rgba(229, 188, 95, 0.26);
}

body.shell-profile-rpg .shell-status-icon--journal {
  font-size: 2.65rem;
}

body.shell-profile-rpg .shell-status-icon--bazaar {
  font-size: 0;
  position: relative;
}

body.shell-profile-rpg .shell-status-icon--quests,
body.shell-profile-rpg .shell-status-icon--coin {
  font-size: 0;
  position: relative;
}

body.shell-profile-rpg .shell-status-icon--coin > span {
  display: none;
}

body.shell-profile-rpg .shell-status-icon--quests {
  overflow: visible;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll {
  display: block;
  height: 0.54rem;
  left: 50%;
  top: 50%;
  width: 2.02rem;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll::before,
body.shell-profile-rpg .shell-status-icon--quests > .home-scroll::after {
  height: 0.68rem;
  width: 0.4rem;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll::before {
  left: -0.24rem;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll::after {
  right: -0.24rem;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll i {
  height: 0.08rem;
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll--0 {
  transform: translate(-54%, -144%) rotate(-13deg);
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll--1 {
  transform: translate(-45%, -67%) rotate(8deg);
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll--2 {
  transform: translate(-56%, 10%) rotate(-5deg);
}

body.shell-profile-rpg .shell-status-icon--quests > .home-scroll--3 {
  transform: translate(-43%, 86%) rotate(12deg);
}

body.shell-profile-rpg .shell-status-icon--coin::before {
  background:
    radial-gradient(circle at 34% 28%, rgba(255, 246, 193, 0.78), transparent 28%),
    linear-gradient(145deg, #f0c46f, #a96b27 74%);
  border: 1px solid rgba(255, 226, 150, 0.58);
  border-radius: 50%;
  content: "";
  height: 1.55rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 1.55rem;
}

body.shell-profile-rpg .shell-status-icon--coin::after {
  border-left: 2px solid rgba(74, 39, 16, 0.58);
  border-radius: 65% 35% 55% 45%;
  border-top: 2px solid rgba(74, 39, 16, 0.72);
  content: "";
  height: 0.56rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-44%, -45%) rotate(-22deg);
  width: 0.66rem;
}

body.shell-profile-rpg .shell-status-icon--quests::before,
body.shell-profile-rpg .shell-status-icon--quests::after {
  content: none;
}

body.shell-profile-rpg .shell-status-icon--bazaar::before {
  background:
    repeating-linear-gradient(90deg, #f4cf80 0 0.28rem, #8e4a31 0.28rem 0.56rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent);
  border: 1px solid rgba(255, 223, 157, 0.6);
  border-bottom: 0;
  border-radius: 0.28rem 0.28rem 0.08rem 0.08rem;
  box-shadow: 0 0.26rem 0.46rem rgba(10, 3, 1, 0.28);
  content: "";
  height: 0.98rem;
  left: 50%;
  position: absolute;
  top: 0.34rem;
  transform: translateX(-50%);
  width: 2.72rem;
}

body.shell-profile-rpg .shell-status-icon--bazaar::after {
  background:
    linear-gradient(90deg, transparent 0.42rem, rgba(44, 20, 8, 0.72) 0.42rem 0.82rem, transparent 0.82rem),
    linear-gradient(180deg, #d99b56, #8a4e2c);
  border: 1px solid rgba(255, 223, 157, 0.52);
  border-radius: 0.08rem 0.08rem 0.18rem 0.18rem;
  box-shadow:
    inset 0 0.18rem 0 rgba(255, 232, 174, 0.18),
    0 0.3rem 0.5rem rgba(10, 3, 1, 0.3);
  content: "";
  height: 1.5rem;
  left: 50%;
  position: absolute;
  top: 1.24rem;
  transform: translateX(-50%);
  width: 1.98rem;
}

.adventure-journal-surface {
  color: #2e2015;
}

.adventure-journal-hero,
.adventure-journal-page,
.adventure-journal-summary .home-status-card {
  background:
    linear-gradient(180deg, rgba(255, 250, 231, 0.92), rgba(232, 205, 145, 0.86)),
    radial-gradient(circle at 16% 12%, rgba(116, 72, 28, 0.14), transparent 16rem);
  border-color: rgba(105, 67, 29, 0.34);
  box-shadow:
    0 0.65rem 1.6rem rgba(24, 12, 2, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.38);
  color: #2e2015;
}

.adventure-journal-hero {
  display: grid;
  gap: 0.35rem;
  padding: clamp(1rem, 4vw, 1.6rem);
}

.adventure-journal-hero h2,
.adventure-journal-page h2,
.adventure-journal-summary h2 {
  color: #3a2412;
}

.adventure-journal-surface .muted,
.adventure-journal-surface .eyebrow {
  color: rgba(55, 34, 17, 0.78);
}

.adventure-journal-page .home-notification-list {
  display: grid;
  gap: 0.8rem;
}

.adventure-log-entry {
  align-items: center;
  background:
    linear-gradient(90deg, rgba(95, 57, 21, 0.08), transparent 32%),
    rgba(255, 251, 231, 0.68);
  border-color: rgba(105, 67, 29, 0.26);
  color: #2e2015;
  grid-template-columns: 4.35rem minmax(0, 1fr);
  min-height: 5.1rem;
}

.adventure-log-entry__copy {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}

.adventure-log-entry__copy strong {
  color: #2e2015;
  font-family: "Mansalva", "Comic Sans MS", "Bradley Hand", cursive;
  font-size: clamp(1.32rem, 5.2vw, 1.9rem);
  letter-spacing: 0;
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.adventure-log-entry__copy small {
  color: rgba(55, 34, 17, 0.68);
}

.adventure-log-entry__card {
  align-items: center;
  display: flex;
  height: 4.35rem;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
  width: 4.35rem;
}

.adventure-log-entry__card .nysa-card {
  --small-card-width: 3.05rem;
  filter: drop-shadow(0 0.22rem 0.28rem rgba(45, 24, 8, 0.22));
  pointer-events: auto;
}

.adventure-log-entry__card .nysa-card:hover {
  filter: drop-shadow(0 0.22rem 0.28rem rgba(45, 24, 8, 0.22));
  transform: none;
}

.adventure-log-entry__card .nysa-card__button {
  cursor: pointer;
}

.adventure-log-entry__card .card-container {
  border-radius: 0.28rem;
  box-shadow: 0 0.16rem 0.35rem rgba(45, 24, 8, 0.28);
}

.adventure-log-entry__card .card-background {
  inset: 0.18rem;
}

.adventure-log-entry__card .card-frame {
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}

.adventure-log-entry__card .frame-header,
.adventure-log-entry__card .frame-type-line,
.adventure-log-entry__card .frame-text-box,
.adventure-log-entry__card .frame-bottom-info,
.adventure-log-entry__card .offering-card-qr-badge,
.adventure-log-entry__card .small-card-expansion,
.adventure-log-entry__card .card-direct-link {
  display: none;
}

.adventure-log-entry__card .frame-art-crop {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.32);
  flex: 1 1 auto;
  margin: 0;
  width: 100%;
}

.adventure-log-entry__card .frame-art {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.adventure-log-entry__card--fallback {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent),
    rgba(87, 82, 79, 0.3);
  border: 1px solid rgba(89, 72, 54, 0.38);
  border-radius: 0.35rem;
}

@media (max-width: 560px) {
  .adventure-log-entry {
    grid-template-columns: 3.85rem minmax(0, 1fr);
    min-height: 4.65rem;
  }

  .adventure-log-entry__card {
    height: 3.85rem;
    width: 3.85rem;
  }

  .adventure-log-entry__card .nysa-card {
    --small-card-width: 2.7rem;
  }
}

body.shell-profile-rpg .shell-dom-nav button[aria-current="true"],
body.shell-profile-rpg .shell-dom-nav button.is-active,
body.shell-profile-rpg .shell-dom-nav button[aria-current="true"]:hover,
body.shell-profile-rpg .shell-dom-nav button.is-active:hover,
body.shell-profile-rpg .shell-dom-nav button[aria-current="true"]:focus-visible,
body.shell-profile-rpg .shell-dom-nav button.is-active:focus-visible {
  background:
    linear-gradient(180deg, rgba(197, 167, 255, 0.28), rgba(142, 99, 215, 0.18)),
    rgba(216, 184, 90, 0.12);
  border-color: rgba(216, 184, 90, 0.88);
  color: var(--rpg-gold-soft);
  box-shadow:
    inset 0 0 0 1px rgba(255, 240, 186, 0.16),
    0 0 18px rgba(216, 184, 90, 0.2);
  outline: 0;
}

body.shell-profile-rpg .surface-panel,
body.shell-profile-rpg .state-box,
body.shell-profile-rpg .nysa-compact-card,
body.shell-profile-rpg .home-quest-card,
body.shell-profile-rpg .home-notification-item,
body.shell-profile-rpg .transfer-pending-card {
  background:
    linear-gradient(180deg, rgba(143, 167, 232, 0.07), transparent 38%),
    linear-gradient(135deg, rgba(142, 99, 215, 0.12), rgba(17, 29, 53, 0.08) 58%, transparent),
    rgba(8, 5, 16, 0.9);
  border-color: var(--rpg-line);
  box-shadow:
    0 0 0 1px rgba(197, 167, 255, 0.05) inset,
    0 18px 42px rgba(0, 0, 0, 0.34);
}

body.shell-profile-rpg .quest-card--player {
  border-left-color: var(--quest-state-color, var(--rpg-gold));
  gap: 0.75rem;
  padding: 0.95rem;
}

body.shell-profile-rpg .quest-surface .journal-tabs {
  background:
    linear-gradient(90deg, rgba(142, 99, 215, 0.1), rgba(143, 167, 232, 0.05)),
    rgba(7, 3, 11, 0.56);
  border: 1px solid rgba(197, 167, 255, 0.22);
  border-radius: 8px;
  padding: 0.45rem;
}

body.shell-profile-rpg .quest-surface .journal-tabs button {
  min-height: 2.55rem;
}

body.shell-profile-rpg .quest-surface .journal-tabs button.is-active {
  background: rgba(142, 99, 215, 0.2);
  border-color: rgba(197, 167, 255, 0.58);
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg .quest-card--player h3,
body.shell-profile-rpg .home-status-card h2,
body.shell-profile-rpg .wallet-balance-card h2,
body.shell-profile-rpg .transfer-quick-panel h2 {
  color: var(--rpg-gold-soft);
  text-shadow: 0 0 16px rgba(229, 188, 95, 0.16);
}

body.shell-profile-rpg .eyebrow,
body.shell-profile-rpg .quest-surface .journal-tabs::before,
body.shell-profile-rpg .runtime-feed h3,
body.shell-profile-rpg .shell-result-group h3 {
  color: var(--rpg-purple-soft);
}

body.shell-profile-rpg .nysa-state-pill,
body.shell-profile-rpg .quest-state-pill,
body.shell-profile-rpg .console-pill {
  background: rgba(142, 99, 215, 0.12);
  border-color: rgba(197, 167, 255, 0.42);
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg :is(
  .home-quest-card,
  .home-offering-card,
  [data-wallet-page] .wallet-balance-card,
  [data-wallet-page] [data-wallet-identity],
  [data-wallet-page] [data-wallet-transfer-summary],
  [data-wallet-page] .wallet-activity-row,
  [data-transfer-page] .transfer-pending-card,
  [data-transfer-page] .transfer-contract-panel,
  [data-transfer-page] .transfer-contract-share
) :is(.nysa-state-pill, .quest-state-pill),
body.shell-profile-rpg :is(
  [data-wallet-page] .wallet-activity-row,
  [data-transfer-page] .transfer-pending-card,
  [data-transfer-page] .transfer-contract-panel,
  [data-transfer-page] .transfer-contract-share
) > .console-pill {
  display: none;
}

body.shell-profile-rpg :is(
  [data-home-dashboard],
  [data-quest-page],
  [data-wallet-page],
  [data-offerings-page],
  [data-offering-detail-page],
  [data-activity-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.nysa-state-pill, .quest-state-pill, .console-pill) {
  display: none;
}

body.shell-profile-rpg .nysa-state-active,
body.shell-profile-rpg .quest-state-active,
body.shell-profile-rpg .console-status-card--ok {
  --nysa-state-color: var(--rpg-gold);
  --quest-state-color: var(--rpg-gold);
}

body.shell-profile-rpg .nysa-state-complete,
body.shell-profile-rpg .quest-state-complete {
  --nysa-state-color: #c5a7ff;
  --quest-state-color: #c5a7ff;
}

body.shell-profile-rpg .nysa-state-draft,
body.shell-profile-rpg .quest-state-draft {
  --nysa-state-color: #b58cff;
  --quest-state-color: #b58cff;
}

body.shell-profile-rpg .quest-progress__bar,
body.shell-profile-rpg .transfer-pending-card__route {
  background: rgba(7, 3, 11, 0.62);
  border-color: var(--rpg-line-soft);
}

body.shell-profile-rpg .transfer-simple-card {
  gap: 0.7rem;
}

body.shell-profile-rpg .transfer-simple-flow__time {
  color: rgba(211, 199, 231, 0.68);
}

body.shell-profile-rpg .transfer-simple-flow__party {
  color: #fff7e4;
  font-family: var(--brand-font);
}

body.shell-profile-rpg .transfer-simple-flow__arrow {
  color: var(--rpg-moon-blue);
}

body.shell-profile-rpg .transfer-simple-flow__arrow span {
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg .transfer-simple-flow__state {
  color: rgba(197, 167, 255, 0.74);
}

body.shell-profile-rpg [data-transfer-contract-panel] [data-transfer-summary],
body.shell-profile-rpg [data-transfer-contract-panel] [data-transfer-requester],
body.shell-profile-rpg [data-transfer-contract-panel] [data-transfer-recipient],
body.shell-profile-rpg [data-transfer-contract-panel] [data-transfer-payer],
body.shell-profile-rpg [data-transfer-contract-panel] [data-transfer-memo],
body.shell-profile-rpg [data-transfer-contract-panel] > header {
  display: none;
}

body.shell-profile-rpg .quest-progress__bar span {
  background: linear-gradient(90deg, var(--rpg-purple), var(--rpg-moon-blue));
}

body.shell-profile-rpg .quest-progress__steps li,
body.shell-profile-rpg .nysa-essentials div,
body.shell-profile-rpg .quest-essentials div {
  background: rgba(7, 3, 11, 0.46);
  border-color: rgba(197, 167, 255, 0.22);
}

body.shell-profile-rpg .quest-progress {
  background:
    linear-gradient(180deg, rgba(142, 99, 215, 0.08), transparent),
    rgba(7, 3, 11, 0.46);
  border-color: rgba(197, 167, 255, 0.28);
}

body.shell-profile-rpg .quest-progress__summary strong {
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg .quest-card-action--primary,
body.shell-profile-rpg .quest-scan-primary-action button,
body.shell-profile-rpg [data-transfer-create-submit],
body.shell-profile-rpg [data-transfer-pending-action="accept"],
body.shell-profile-rpg [data-transfer-action="accept"] {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 42%),
    linear-gradient(135deg, var(--rpg-gold-soft), #9d6829);
  border-color: rgba(243, 217, 147, 0.84);
  color: #120719;
  font-weight: 950;
  text-shadow: none;
}

body.shell-profile-rpg .nysa-info-drawer,
body.shell-profile-rpg .quest-info-drawer {
  background: rgba(7, 3, 11, 0.42);
  border-color: rgba(197, 167, 255, 0.26);
}

body.shell-profile-rpg .nysa-info-drawer[open],
body.shell-profile-rpg .quest-info-drawer[open] {
  background: rgba(12, 5, 18, 0.8);
  border-color: rgba(229, 188, 95, 0.44);
}

body.shell-profile-rpg .nysa-info-drawer summary,
body.shell-profile-rpg .quest-info-drawer summary {
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg .shell-toast {
  background:
    linear-gradient(180deg, rgba(142, 99, 215, 0.12), transparent 52%),
    rgba(10, 4, 15, 0.96);
  border-color: rgba(197, 167, 255, 0.46);
  border-left-color: var(--rpg-gold);
  border-radius: 8px;
}

body.shell-profile-rpg .shell-toast strong::before {
  color: var(--rpg-gold);
  content: "Realm Notice: ";
}

body.shell-profile-rpg .inspector {
  background: transparent;
  border-color: rgba(229, 188, 95, 0.38);
  box-shadow:
    0 0 0 1px rgba(255, 247, 228, 0.06) inset,
    0 0 2.8rem rgba(229, 188, 95, 0.16),
    0 0 5.5rem rgba(142, 99, 215, 0.2),
    0 0 7rem rgba(0, 0, 0, 0.88);
  height: 100%;
  margin: 0;
  max-height: 100%;
  max-width: 100dvw;
  width: 100dvw;
}

body.shell-profile-rpg .inspector header {
  background:
    linear-gradient(90deg, rgba(229, 188, 95, 0.12), rgba(142, 99, 215, 0.08)),
    rgba(7, 3, 11, 0.74);
  border-bottom-color: rgba(229, 188, 95, 0.28);
}

body.shell-profile-rpg .inspector-card-summary {
  display: grid;
  justify-items: center;
  min-width: 0;
  width: 100%;
}

body.shell-profile-rpg .inspector-card-summary .nysa-card {
  --small-card-width: min(100dvw, calc((100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px)) * 0.7142857));
  width: min(100dvw, var(--small-card-width));
}

body.shell-profile-rpg .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__back {
  aspect-ratio: auto;
  min-height: calc(var(--small-card-width) * 1.46);
  overflow-x: hidden;
  overflow-y: auto;
}

body.shell-profile-rpg .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__front .card-background {
  inset: 1rem;
  margin: 0;
  min-height: calc(var(--small-card-width) * 1.32);
  position: absolute;
  width: auto;
}

body.shell-profile-rpg .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__front .card-frame {
  align-content: start;
  display: grid;
  grid-template-rows: auto minmax(10rem, 0.34fr) auto minmax(0, 1fr) auto;
  height: auto;
  min-height: calc(var(--small-card-width) * 1.34);
  padding-bottom: 0.48rem;
}

body.shell-profile-rpg .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__front .frame-art-crop {
  flex: none;
  min-height: min(18rem, calc(var(--small-card-width) * 0.42));
}

body.shell-profile-rpg .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__front .frame-text-box {
  display: grid;
  gap: 0.55rem;
  justify-content: stretch;
  max-height: none;
  overflow: visible;
  padding-block: 4.5%;
}

body.shell-profile-rpg .inspector-card-data {
  display: none !important;
}

body.shell-profile-rpg .inspector-detail {
  background:
    radial-gradient(circle at 50% 0%, rgba(229, 188, 95, 0.08), transparent 22rem),
    linear-gradient(180deg, rgba(143, 167, 232, 0.07), transparent 32%),
    rgba(7, 3, 11, 0.68);
  border: 1px solid rgba(229, 188, 95, 0.28);
  border-radius: 8px;
  display: grid;
  gap: 1.1rem;
  justify-items: center;
  padding: clamp(0.85rem, 2vw, 1.25rem);
}

body.shell-profile-rpg .inspector-detail > .contract-list {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.shell-profile-rpg .inspector-detail > .contract-list div {
  background: rgba(7, 3, 11, 0.42);
  border: 1px solid rgba(197, 167, 255, 0.2);
  border-radius: 6px;
  padding: 0.5rem;
}

body.shell-profile-rpg .inspector-detail > .contract-list dt {
  color: var(--rpg-purple-soft);
}

body.shell-profile-rpg .inspector-detail > .contract-list dd {
  color: #fff7e4;
  font-weight: 850;
  overflow-wrap: anywhere;
}

body.shell-profile-rpg .card-module {
  background: rgba(7, 3, 11, 0.38);
  border: 1px solid rgba(197, 167, 255, 0.2);
  border-radius: 8px;
  padding: 0.75rem;
}

body.shell-profile-rpg .card-module h3 {
  color: var(--rpg-gold-soft);
  font-family: var(--display-font);
}

body.shell-profile-rpg [data-route="deck.cfm"],
body.shell-profile-rpg [data-route-nav-group="decks"] {
  display: none !important;
}

body.shell-profile-rpg .wallet-overview-grid,
body.shell-profile-rpg .home-dashboard-grid,
body.shell-profile-rpg .route-template,
body.shell-profile-rpg .page-frame,
body.shell-profile-rpg .runtime-feed,
body.shell-profile-rpg .runtime-list {
  gap: 1.15rem;
}

body.shell-profile-rpg .wallet-balance-card,
body.shell-profile-rpg .transfer-quick-panel,
body.shell-profile-rpg .quest-board-panel {
  border-color: rgba(197, 167, 255, 0.42);
}

body.shell-profile-rpg .quest-card--player {
  background:
    linear-gradient(145deg, rgba(143, 167, 232, 0.14), rgba(142, 99, 215, 0.1) 38%, rgba(229, 188, 95, 0.055)),
    rgba(8, 4, 13, 0.78);
  border-radius: 10px;
  box-shadow:
    0 22px 60px rgba(0, 0, 0, 0.42),
    inset 0 0 0 1px rgba(229, 188, 95, 0.07);
}

body.shell-profile-rpg .quest-card--player .quest-card__hero,
body.shell-profile-rpg .quest-card--player header {
  gap: 1rem;
}

body.shell-profile-rpg .quest-card--player .quest-essentials,
body.shell-profile-rpg .quest-card--player .quest-progress {
  gap: 0.8rem;
}

body.shell-profile-rpg :is([data-quest-page], [data-wallet-page], [data-journal-page], [data-deck-page], [data-radio-page], [data-transfer-page]) {
  --profile-route-gap: 1.25rem;
}

body.shell-profile-rpg :is(
  [data-wallet-page] .nysa-info-drawer,
  [data-quest-page] .quest-info-drawer:not(.quest-receipt-drawer),
  [data-deck-page] .deck-diagnostics,
  [data-radio-page] .radio-diagnostics
) {
  display: none;
}

body.shell-profile-rpg [data-quest-page] .quest-board-panel,
body.shell-profile-rpg [data-wallet-page] .wallet-balance-card,
body.shell-profile-rpg [data-wallet-page] [data-wallet-transfer-summary],
body.shell-profile-rpg [data-radio-page] .radio-player-panel,
body.shell-profile-rpg [data-deck-page] .deck-panel,
body.shell-profile-rpg [data-journal-page] .journal-panel,
body.shell-profile-rpg [data-transfer-page] .transfer-quick-panel,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-panel,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-share {
  backdrop-filter: blur(18px) saturate(1.12);
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-card h2 {
  font-size: clamp(2.6rem, 8vw, 4.6rem);
  line-height: 0.9;
}

body.shell-profile-rpg [data-wallet-page] .wallet-overview-grid {
  grid-template-columns: minmax(0, 1.45fr) minmax(min(20rem, 100%), 0.7fr);
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-card {
  grid-column: 1 / -1;
  overflow: hidden;
  position: relative;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-card::before {
  background:
    radial-gradient(circle at 20% 20%, rgba(229, 188, 95, 0.12), transparent 14rem),
    radial-gradient(circle at 80% 70%, rgba(143, 167, 232, 0.12), transparent 13rem);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-hero {
  align-items: center;
  display: grid;
  gap: clamp(1rem, 3vw, 2rem);
  grid-template-columns: minmax(11rem, 0.76fr) minmax(0, 1fr);
  position: relative;
  z-index: 1;
}

body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard {
  display: grid;
  gap: 0.65rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard__circle {
  border-color: rgba(229, 188, 95, 0.5);
  box-shadow:
    inset 0 0 2.4rem rgba(0, 0, 0, 0.78),
    inset 0 0 0 0.45rem rgba(0, 0, 0, 0.2),
    0 1.15rem 2.6rem rgba(0, 0, 0, 0.48),
    0 0 2.8rem rgba(229, 188, 95, 0.13);
}

body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard__legend {
  gap: 0.32rem;
  justify-content: center;
}

body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard__legend .coin-denom {
  background: rgba(7, 3, 11, 0.58);
  border-color: rgba(229, 188, 95, 0.28);
  color: rgba(255, 247, 228, 0.72);
  font-size: 0.72rem;
  padding: 0.28rem 0.36rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard__legend .coin-denom b {
  color: var(--rpg-gold-soft);
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-copy {
  align-content: center;
  gap: 1rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-copy .muted {
  max-width: 42rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger {
  gap: 0.65rem;
  grid-template-columns: minmax(0, 1fr);
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger [data-wallet-ledger-row="reserved"],
body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger [data-wallet-ledger-row="rain"],
body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger [data-wallet-ledger-row="favor"] {
  display: none;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger div {
  min-height: 4rem;
  padding-right: 2.7rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger dd {
  color: #fff7e4;
  font-weight: 900;
}

body.shell-profile-rpg [data-wallet-page] .wallet-overview-grid > * {
  min-width: 0;
}

body.shell-profile-rpg [data-wallet-page] :is(.wallet-balance-card, [data-wallet-transfer-summary], [data-wallet-identity]) h2 {
  overflow-wrap: normal;
  word-break: normal;
}

body.shell-profile-rpg [data-wallet-page] [data-wallet-transfer-summary],
body.shell-profile-rpg [data-wallet-page] .wallet-loop-card,
body.shell-profile-rpg [data-wallet-page] .wallet-activity-row {
  padding-right: 4.1rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-loop-card {
  min-height: 9rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-loop-card__icon {
  color: var(--rpg-gold-soft);
  filter: drop-shadow(0 0 0.7rem rgba(229, 188, 95, 0.2));
}

body.shell-profile-rpg [data-wallet-page] .wallet-row-rpg-mark {
  opacity: 0.82;
}

body.shell-profile-rpg [data-wallet-page] .wallet-row-rpg-mark .rpg-icon {
  width: 2.35rem;
}

body.shell-profile-rpg [data-wallet-page] .wallet-primary-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 0;
}

body.shell-profile-rpg [data-transfer-page] .transfer-pending-card,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-panel,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-share {
  position: relative;
}

body.shell-profile-rpg [data-transfer-page] .transfer-pending-card::before,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-panel::before,
body.shell-profile-rpg [data-transfer-page] .transfer-contract-share::before {
  background:
    linear-gradient(90deg, rgba(107, 63, 32, 0.5), transparent 14% 86%, rgba(107, 63, 32, 0.52)),
    repeating-linear-gradient(0deg, rgba(92, 53, 25, 0.16) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, #ead3a1, #b98348 72%);
  border: 1px solid rgba(255, 223, 157, 0.48);
  border-radius: 0.14rem;
  box-shadow: 0 0.45rem 0.75rem rgba(0, 0, 0, 0.26);
  content: "";
  height: 2rem;
  opacity: 0.72;
  pointer-events: none;
  position: absolute;
  right: 0.8rem;
  top: 0.75rem;
  transform: rotate(7deg);
  width: 1.55rem;
}

@media (max-width: 760px) {
  body.shell-profile-rpg [data-wallet-page] .wallet-overview-grid,
  body.shell-profile-rpg [data-wallet-page] .wallet-balance-hero {
    grid-template-columns: 1fr;
  }

  body.shell-profile-rpg [data-wallet-page] .wallet-coin-hoard {
    justify-self: center;
  }

  body.shell-profile-rpg [data-wallet-page] .wallet-balance-ledger {
    grid-template-columns: minmax(0, 1fr);
  }

  body.shell-profile-rpg [data-wallet-page] [data-wallet-transfer-summary],
  body.shell-profile-rpg [data-wallet-page] .wallet-loop-card,
  body.shell-profile-rpg [data-wallet-page] .wallet-activity-row {
    padding-right: 0.85rem;
  }

  body.shell-profile-rpg [data-wallet-page] .wallet-card-rpg-mark,
  body.shell-profile-rpg [data-wallet-page] .wallet-row-rpg-mark,
  body.shell-profile-rpg [data-wallet-page] .wallet-loop-card__icon {
    opacity: 0.34;
  }
}

body.shell-profile-rpg [data-radio-page] .radio-player-panel {
  align-items: center;
}

body.shell-profile-rpg [data-radio-page] .radio-now-art {
  box-shadow:
    0 22px 55px rgba(0, 0, 0, 0.42),
    0 0 0 1px rgba(229, 188, 95, 0.1) inset;
}

body.shell-profile-rpg [data-deck-page] .deck-card-strip,
body.shell-profile-rpg [data-radio-page] .radio-track-list {
  gap: 1rem;
}

body.shell-profile-rpg [data-transfer-page] .transfer-mode-help,
body.shell-profile-rpg [data-transfer-page] .transfer-pending-search span,
body.shell-profile-rpg [data-wallet-page] [data-wallet-identity] .muted {
  display: none;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) {
  --profile-route-gap: 0.85rem;
  --profile-grid-gap: 0.7rem;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.surface-panel, .nysa-compact-card, .quest-admin-panel, .quest-admin-row, .economy-admin-row, .admin-ops-row, .quest-web-forge-web-card) {
  background:
    linear-gradient(180deg, rgba(143, 167, 232, 0.045), transparent 42%),
    rgba(11, 7, 20, 0.94);
  border-color: rgba(197, 167, 255, 0.3);
  box-shadow: none;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.eyebrow, .muted, small, .contract-list dt) {
  color: rgba(211, 199, 231, 0.8);
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page]
) :is(.quest-admin-rail, .shell-action-rail, .quest-web-forge-map-toolbar) {
  background: rgba(7, 3, 11, 0.92);
  border-color: rgba(197, 167, 255, 0.28);
}

body.shell-profile-rpg :is([data-home-dashboard], [data-compendium]) {
  --profile-route-gap: 1.25rem;
  --profile-grid-gap: 1rem;
}

body.shell-profile-rpg [data-home-dashboard] .home-dashboard-grid--summary {
  grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr));
}

body.shell-profile-rpg [data-home-dashboard] :is(.home-status-card, .home-quest-panel, .home-activity-panel, .home-quest-card, .home-notification-item),
body.shell-profile-rpg [data-compendium] :is(.compendium-toolbar, .shell-journal-index, .shell-journal-detail, .compendium-journal-card-meta) {
  backdrop-filter: blur(18px) saturate(1.12);
  background:
    linear-gradient(145deg, rgba(143, 167, 232, 0.12), rgba(142, 99, 215, 0.08) 42%, rgba(229, 188, 95, 0.04)),
    rgba(8, 4, 13, 0.78);
  border-color: rgba(197, 167, 255, 0.3);
  box-shadow:
    0 22px 60px rgba(0, 0, 0, 0.36),
    inset 0 0 0 1px rgba(229, 188, 95, 0.05);
}

body.shell-profile-rpg [data-home-dashboard] .home-mvp-icon {
  background:
    radial-gradient(circle at 35% 20%, rgba(255, 255, 255, 0.3), transparent 34%),
    linear-gradient(145deg, var(--rpg-gold-soft), #9d6829);
  border-color: rgba(243, 217, 147, 0.82);
  color: #120719;
  font-size: 2rem;
  width: 3.6rem;
}

body.shell-profile-rpg [data-home-dashboard] .home-status-card h2 {
  font-size: clamp(1.65rem, 5vw, 2.8rem);
}

body.shell-profile-rpg [data-compendium] .compendium-toolbar {
  align-items: end;
}

body.shell-profile-rpg [data-compendium] .shell-journal-index-row__copy strong {
  color: #fff7e4;
}

body.shell-profile-rpg [data-compendium] .compendium-journal-card-detail {
  gap: 1.25rem;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.quest-admin-row, .nysa-compact-card, .surface-panel, .state-box) {
  background: rgba(11, 7, 20, 0.92);
  border-color: rgba(197, 167, 255, 0.32);
  box-shadow: none;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page]
) :is(button, .button, input, select, textarea) {
  min-height: 2.45rem;
}

body.shell-profile-rpg .route-template > .state-box:not(.state-box--error):not(.state-box--locked),
body.shell-profile-rpg .page-frame > .state-box:not(.state-box--error):not(.state-box--locked) {
  display: none;
}

body.shell-profile-rpg :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page]
) .state-box {
  display: block;
}

body.shell-profile-rpg :is(
  [data-home-status],
  [data-quest-status],
  [data-wallet-status],
  [data-transfer-state],
  [data-vendor-quest-message],
  [data-admin-ops-status],
  [data-admin-movement-status],
  [data-signals-admin-status],
  [data-economy-admin-status],
  [data-radio-status],
  [data-compendium-status],
  [data-deck-status]
):not(.state-box--error):not(.state-box--locked) {
  display: none;
}

body.shell-profile-rpg .contract-list dt,
body.shell-profile-rpg .muted,
body.shell-profile-rpg .runtime-feed small,
body.shell-profile-rpg .shell-result-group small {
  color: rgba(211, 199, 231, 0.74);
}

body.shell-profile-rpg .shell-result-group,
body.shell-profile-rpg .runtime-feed,
body.shell-profile-rpg .journal-panel,
body.shell-profile-rpg .journal-signal-list,
body.shell-profile-rpg .journal-readout-list,
body.shell-profile-rpg .shell-journal-index,
body.shell-profile-rpg .shell-journal-detail {
  background:
    linear-gradient(180deg, rgba(17, 29, 53, 0.18), rgba(43, 23, 70, 0.08)),
    rgba(6, 4, 13, 0.68);
  border-color: rgba(197, 167, 255, 0.18);
}

body.shell-profile-rpg .journal-signal-card,
body.shell-profile-rpg .journal-readout-row,
body.shell-profile-rpg .journal-row-wrap,
body.shell-profile-rpg .shell-journal-index-row {
  background:
    linear-gradient(135deg, rgba(143, 167, 232, 0.1), rgba(142, 99, 215, 0.08)),
    rgba(8, 5, 16, 0.76);
  border-color: rgba(197, 167, 255, 0.22);
  box-shadow: inset 0 0 0 1px rgba(229, 188, 95, 0.03);
}

body.shell-profile-rpg :is(.home-notification-item, .journal-signal-card, .journal-readout-row, .shell-journal-index-row, .deck-panel, .radio-track) {
  position: relative;
}

body.shell-profile-rpg :is(.home-notification-item, .journal-signal-card, .journal-readout-row, .shell-journal-index-row)::after {
  background:
    linear-gradient(90deg, transparent 0.32rem, rgba(82, 48, 23, 0.48) 0.32rem 0.4rem, transparent 0.4rem),
    repeating-linear-gradient(180deg, transparent 0 0.3rem, rgba(82, 48, 23, 0.4) 0.3rem 0.36rem),
    linear-gradient(145deg, #ead3a1, #b98348);
  border: 1px solid rgba(255, 223, 157, 0.42);
  border-radius: 0.1rem 0.34rem 0.14rem 0.1rem;
  content: "";
  height: 1.45rem;
  opacity: 0.58;
  pointer-events: none;
  position: absolute;
  right: 0.7rem;
  top: 0.65rem;
  transform: rotate(-5deg);
  width: 1.05rem;
}

body.shell-profile-rpg .deck-panel::before {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(197, 167, 255, 0.14));
  border: 0.08rem solid var(--rpg-gold-soft);
  border-radius: 0.14rem;
  box-shadow:
    -0.38rem 0.12rem 0 -0.08rem rgba(197, 167, 255, 0.55),
    0.38rem 0.14rem 0 -0.08rem rgba(229, 188, 95, 0.48);
  content: "";
  height: 1.7rem;
  opacity: 0.62;
  pointer-events: none;
  position: absolute;
  right: 0.9rem;
  top: 0.8rem;
  transform: rotate(5deg);
  width: 1.1rem;
}

body.shell-profile-rpg .radio-track::before {
  background: var(--rpg-gold-soft);
  border-radius: 50%;
  box-shadow:
    0 0 0 0.42rem rgba(229, 188, 95, 0.08),
    0 0 1rem rgba(229, 188, 95, 0.34);
  content: "";
  height: 0.5rem;
  opacity: 0.78;
  pointer-events: none;
  position: absolute;
  right: 0.95rem;
  top: 0.95rem;
  width: 0.5rem;
}

body.shell-profile-rpg .journal-signal-card:hover,
body.shell-profile-rpg .journal-readout-row:hover,
body.shell-profile-rpg .shell-journal-index-row:hover,
body.shell-profile-rpg .shell-journal-index-row.is-selected {
  background:
    linear-gradient(135deg, rgba(143, 167, 232, 0.15), rgba(142, 99, 215, 0.12)),
    rgba(11, 7, 20, 0.88);
  border-color: rgba(197, 167, 255, 0.36);
}

@media (max-width: 720px) {
  body.shell-profile-rpg .inspector-detail > .contract-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

body.shell-profile-minimal {
  color-scheme: dark;
  --accent: #ffffff;
  --accent-2: #d0d0d0;
  --bg: #000000;
  --surface: #000000;
  --surface-strong: #090909;
  --glass: #000000;
  --glass-strong: #000000;
  --line: #777777;
  --line-soft: #444444;
  --muted: #b8b8b8;
  --shadow: none;
  --soft-shadow: none;
  --console-gradient: #000000;
  --profile-radius: 0;
  --profile-card-padding: 0.55rem;
  --profile-control-min-height: 2.1rem;
  --profile-content-density: 0.82;
  --profile-shell-backdrop-filter: none;
  --profile-card-shadow: none;
  --profile-route-gap: 0.5rem;
  --profile-grid-gap: 0.45rem;
  --brand-font: Consolas, "Courier New", ui-monospace, monospace;
  --content-font: Consolas, "Courier New", ui-monospace, monospace;
  --display-font: Consolas, "Courier New", ui-monospace, monospace;
  background: #000000;
  font-family: Consolas, "Courier New", ui-monospace, monospace;
}

body.shell-profile-minimal *,
body.shell-profile-minimal *::before,
body.shell-profile-minimal *::after {
  transition: none !important;
}

body.shell-profile-minimal .brand-sigil,
body.shell-profile-minimal .surface-panel,
body.shell-profile-minimal .state-box,
body.shell-profile-minimal .shell-topbar,
body.shell-profile-minimal .shell-bottombar,
body.shell-profile-minimal .shell-dom-nav,
body.shell-profile-minimal .drawer,
body.shell-profile-minimal .inspector,
body.shell-profile-minimal .nysa-compact-card,
body.shell-profile-minimal .home-quest-card,
body.shell-profile-minimal .home-notification-item,
body.shell-profile-minimal .quest-card--player,
body.shell-profile-minimal .quest-admin-row,
body.shell-profile-minimal .runtime-feed article,
body.shell-profile-minimal .runtime-list article,
body.shell-profile-minimal .shell-profile-option {
  background: #000000 !important;
  box-shadow: none;
}

body.shell-profile-minimal .shell-workspace {
  background: #000000 !important;
}

body.shell-profile-minimal .shell-topbar,
body.shell-profile-minimal .shell-bottombar,
body.shell-profile-minimal .shell-dom-nav,
body.shell-profile-minimal .drawer,
body.shell-profile-minimal .inspector {
  backdrop-filter: none;
}

body.shell-profile-minimal button,
body.shell-profile-minimal .button,
body.shell-profile-minimal input,
body.shell-profile-minimal select,
body.shell-profile-minimal textarea {
  background: #000000;
  border-color: #888888;
  border-radius: 0;
  color: #ffffff;
  font-family: Consolas, "Courier New", ui-monospace, monospace;
}

body.shell-profile-minimal .app-main {
  padding: 0.8rem;
}

body.shell-profile-minimal .page-frame,
body.shell-profile-minimal .route-template,
body.shell-profile-minimal .shell-drawer-mode {
  gap: 0.55rem;
}

body.shell-profile-minimal h1,
body.shell-profile-minimal h2,
body.shell-profile-minimal h3,
body.shell-profile-minimal h4,
body.shell-profile-minimal h5,
body.shell-profile-minimal .brand-mark strong,
body.shell-profile-minimal .shell-brand strong,
body.shell-profile-minimal .shell-masthead-logo,
body.shell-profile-minimal .shell-journal-index-row__copy strong,
body.shell-profile-minimal .quest-index-row__copy strong,
body.shell-profile-minimal .home-quest-card h3,
body.shell-profile-minimal .quest-card h3,
body.shell-profile-minimal .surface-panel > header :is(h2, h3),
body.shell-profile-minimal .quest-panel-header :is(h2, h3) {
  font-family: Consolas, "Courier New", ui-monospace, monospace;
}

body.shell-profile-minimal h1 {
  font-size: 1.6rem;
}

body.shell-profile-minimal .surface-panel,
body.shell-profile-minimal .state-box {
  padding: 0.65rem;
}

body.shell-profile-minimal .shell-status-copy,
body.shell-profile-minimal .shell-masthead-title,
body.shell-profile-minimal .shell-session-tool__name,
body.shell-profile-minimal .shell-search-button small,
body.shell-profile-minimal .shell-hero-label {
  display: none !important;
}

body.shell-profile-minimal .shell-status-cell {
  align-items: center;
  gap: 0;
  justify-items: center;
  justify-content: center;
  min-width: 0;
  padding: 0.25rem;
}

body.shell-profile-minimal:not(.shell-admin-rail-active) .shell-bottombar {
  grid-auto-columns: minmax(0, 4.4rem);
  gap: 0;
  padding: 0.2rem;
}

body.shell-admin-rail-active.shell-profile-minimal .shell-bottombar {
  gap: 0;
  grid-template-columns: repeat(auto-fit, minmax(3.4rem, 5rem));
  padding: 0.2rem;
}

body.shell-profile-minimal .shell-status-icon,
body.shell-profile-minimal .shell-control-icon {
  font-size: 1.25rem;
}

body.shell-profile-minimal .shell-status-icon {
  background: #000000;
  border-color: #777777;
  width: 1.75rem;
}

body.shell-profile-minimal .shell-status-cell[aria-current="page"] .shell-status-icon,
body.shell-profile-minimal .shell-status-cell:hover .shell-status-icon,
body.shell-profile-minimal .shell-status-cell:focus-visible .shell-status-icon {
  border-color: #ffffff;
}

body.shell-profile-minimal :is(.surface-panel, .state-box, .nysa-compact-card, .quest-admin-row, .journal-tabs, .shell-dom-nav button) {
  border-radius: 0 !important;
}

body.shell-profile-minimal :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) {
  letter-spacing: 0;
}

body.shell-profile-minimal :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.eyebrow, .muted, .quest-card__summary, .transfer-mode-help, .radio-now-meta, .deck-toolbar p, .journal-panel header p, .transfer-pending-search span) {
  display: none !important;
}

body.shell-profile-minimal :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.nysa-info-drawer, .quest-info-drawer, .deck-diagnostics, .radio-diagnostics) {
  display: none !important;
}

body.shell-profile-minimal :is(
  [data-quest-page],
  [data-wallet-page],
  [data-journal-page],
  [data-deck-page],
  [data-radio-page],
  [data-transfer-page]
) :is(.journal-tabs, .quest-card-actions, .transfer-pending-actions, .transfer-action-buttons) {
  gap: 0.25rem;
}

body.shell-profile-minimal :is(.quest-card-actions, .transfer-pending-actions, .transfer-action-buttons) :is(button, .button, a) {
  justify-content: center;
  min-width: 2.75rem;
  padding-inline: 0.45rem;
}

body.shell-profile-minimal :is(.quest-essentials, .nysa-essentials, .contract-list) div,
body.shell-profile-minimal :is(.transfer-pending-card__route span, .wallet-activity-row, .journal-signal-card, .journal-readout-row, .deck-panel, .radio-track) {
  background: #000000 !important;
  border-radius: 0 !important;
}

body.shell-profile-minimal :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) {
  --profile-route-gap: 0.45rem;
  --profile-grid-gap: 0.4rem;
}

body.shell-profile-minimal :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.surface-panel, .nysa-compact-card, .quest-admin-panel, .quest-admin-row, .economy-admin-row, .admin-ops-row, .quest-web-forge-web-card, .quest-web-forge-map, .quest-web-forge-map-node) {
  background: #000000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.shell-profile-minimal :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page],
  [data-qr-display-page],
  [data-quest-qr-sheet-page]
) :is(.eyebrow, .muted:not(.state-box), small:not(.context-picker-selected), .quest-admin-create-form label span, .economy-admin-adjustment-form label span) {
  display: none !important;
}

body.shell-profile-minimal :is(
  [data-quest-admin-page],
  [data-quest-web-forge-page],
  [data-economy-admin-page],
  [data-admin-ops-page],
  [data-admin-movement-page],
  [data-signals-admin-page]
) :is(.shell-action-rail, .quest-admin-rail, .quest-web-forge-map-toolbar) {
  background: #000000 !important;
  border-color: #777777;
  box-shadow: none;
}

body.shell-profile-minimal :is([data-home-dashboard], [data-compendium]) {
  --profile-route-gap: 0.45rem;
  --profile-grid-gap: 0.4rem;
}

body.shell-profile-minimal :is([data-home-dashboard], [data-compendium]) :is(.surface-panel, .home-quest-card, .home-notification-item, .shell-journal-index, .shell-journal-detail, .compendium-journal-card-meta) {
  background: #000000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.shell-profile-minimal :is([data-home-dashboard], [data-compendium]) :is(.eyebrow, .muted:not(.state-box), .home-mvp-icon, .home-notification-group h3, .compendium-toolbar span) {
  display: none !important;
}

body.shell-profile-minimal [data-home-dashboard] :is(.home-mvp-readout, .home-quest-panel > header, .home-activity-panel > header, .home-quest-card header) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

body.shell-profile-minimal [data-compendium] .nysa-card {
  filter: none !important;
  transform: none !important;
}

body.shell-profile-minimal [data-compendium] .nysa-card .card-container {
  background: #000000 !important;
  border-color: #777777 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.shell-profile-minimal [data-compendium] :is(.nysa-card__button, .mini-card, .shell-journal-index-row) {
  border-radius: 0 !important;
}

.context-picker-menu {
  background:
    linear-gradient(180deg, rgba(69, 200, 159, 0.075), transparent 42%),
    var(--surface);
  border: 1px solid color-mix(in srgb, var(--accent-2) 42%, var(--line));
  border-radius: 8px;
  box-shadow: var(--soft-shadow);
  display: grid;
  gap: 0.35rem;
  max-height: min(22rem, 72vh);
  overflow: auto;
  padding: 0.45rem;
  position: fixed;
  overscroll-behavior: contain;
  width: min(34rem, calc(100vw - 1rem));
  z-index: 1005;
}

.context-picker-menu[hidden] {
  display: none;
}

.context-picker-menu[data-mobile-sheet="true"] {
  bottom: calc(var(--shell-bottom-height) + env(safe-area-inset-bottom, 0px) + 0.5rem);
  left: max(0.5rem, env(safe-area-inset-left, 0px));
  max-height: min(22rem, 48dvh);
  right: max(0.5rem, env(safe-area-inset-right, 0px));
  top: auto;
  width: auto;
}

.context-picker-option {
  align-items: start;
  background:
    linear-gradient(135deg, rgba(69, 200, 159, 0.055), transparent 42%),
    var(--surface-strong);
  border-radius: 6px;
  display: grid;
  gap: 0.2rem;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  justify-content: stretch;
  min-height: 3rem;
  padding: 0.45rem;
  text-align: left;
}

.context-picker-option > strong,
.context-picker-option > span:last-child {
  grid-column: 2;
  min-width: 0;
  overflow-wrap: anywhere;
}

.dex-object-picker-option__art,
.dex-object-picker-option__icon,
.dex-object-picker-selected__art {
  align-items: center;
  background-color: color-mix(in srgb, var(--accent-2) 12%, var(--surface-strong));
  background-position: center;
  background-size: cover;
  border: 1px solid var(--line-soft);
  display: inline-flex;
  grid-column: 1;
  grid-row: 1 / span 2;
  height: 2.5rem;
  justify-content: center;
  width: 2.5rem;
}

.context-picker-option.is-active,
.context-picker-option:hover {
  border-color: color-mix(in srgb, var(--accent-2) 72%, var(--line));
}

.context-picker-option small,
.context-picker-option span,
.context-picker-selected {
  color: var(--muted);
}

.context-picker-selected {
  align-items: center;
  display: grid;
  font-size: 0.78rem;
  gap: 0.15rem 0.45rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 1rem;
  overflow-wrap: anywhere;
}

.context-picker-selected > strong,
.context-picker-selected > span:not(.dex-object-picker-selected__art) {
  grid-column: 2;
}

.dex-object-picker-selected__art {
  grid-row: 1 / span 2;
  height: 2rem;
  width: 2rem;
}

.dex-object-picker-clear {
  font-size: 0.75rem;
  margin-top: 0.25rem;
  min-height: 2.75rem;
  padding: 0.35rem 0.65rem;
  width: max-content;
}

@media (max-width: 520px) {
  .context-picker-menu {
    left: 0.5rem !important;
    max-height: min(19rem, 48dvh) !important;
    position: fixed;
    top: auto !important;
    bottom: calc(var(--shell-bottom-height) + 0.5rem);
    width: calc(100dvw - 1rem) !important;
  }

  .context-picker-option,
  .dex-object-picker-clear {
    min-height: 2.75rem;
  }
}

.overlay-root,
.inspector-root {
  inset: 0;
  overflow: hidden;
  position: fixed;
  z-index: 20;
}

.overlay-root {
  z-index: 990;
}

body.is-shell-modal-open {
  overflow: hidden;
}

.overlay-scrim {
  background: rgba(0, 0, 0, 0.45);
  inset: 0;
  position: absolute;
}

.shell-modal-root .overlay-scrim {
  background:
    radial-gradient(circle at 50% 40%, rgba(255, 255, 255, 0.075), transparent 15rem),
    radial-gradient(circle at 50% 0%, rgba(197, 167, 255, 0.12), transparent 28rem),
    rgba(0, 0, 0, 0.92);
}

.inspector-root {
  --inspector-close-height: calc(3.05rem + env(safe-area-inset-bottom, 0px));
  --inspector-close-gap: 0.125rem;
  --inspector-card-top-offset: 0.875rem;
  align-items: stretch;
  display: grid;
  bottom: var(--shell-bottom-height, 0px);
  justify-items: stretch;
  top: var(--shell-top-height, 0px);
  z-index: 995;
}

body.is-shell-overlay-front .overlay-root {
  z-index: 1005;
}

body.is-shell-overlay-front .inspector-root {
  z-index: 995;
}

body.is-inspector-front .overlay-root {
  z-index: 990;
}

body.is-inspector-front .inspector-root {
  z-index: 1005;
}

.inspector-root .overlay-scrim {
  background:
    radial-gradient(circle at 50% 24%, rgba(255, 221, 149, 0.13), transparent 16rem),
    radial-gradient(circle at 50% 50%, rgba(197, 167, 255, 0.1), transparent 28rem),
    #000;
}

.drawer,
.inspector {
  background:
    linear-gradient(180deg, rgba(76, 54, 95, 0.16), transparent 26rem),
    var(--glass-strong);
  backdrop-filter: var(--profile-shell-backdrop-filter);
  border-left: 1px solid var(--line);
  box-shadow: var(--shadow);
  display: grid;
  gap: 1rem;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100dvh;
  margin-left: auto;
  max-height: 100dvh;
  padding: 1rem;
  position: relative;
  max-width: 100dvw;
  min-height: 0;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  width: min(28rem, 100dvw);
}

.inspector {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  margin: 0;
  max-height: 100%;
  max-width: 100dvw;
  padding: 0 0 var(--inspector-close-height);
  place-self: center;
  width: 100dvw;
}

.shell-modal-root {
  align-items: stretch;
  display: grid;
  justify-items: stretch;
}

.shell-modal-root[data-shell-modal-mode="card-share"],
.shell-modal-root[data-shell-modal-mode="signal"] {
  bottom: var(--shell-bottom-height, 0px);
  top: var(--shell-top-height, 0px);
}

.shell-modal-root .drawer {
  background:
    linear-gradient(180deg, rgba(35, 25, 55, 0.54), rgba(3, 3, 7, 0.92)),
    #000;
  border: 1px solid rgba(197, 167, 255, 0.28);
  border-radius: 0;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.045) inset,
    0 0 2rem rgba(197, 167, 255, 0.16),
    0 0 5rem rgba(0, 0, 0, 0.72);
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: calc(100dvh - clamp(1.3rem, 4.4vw, 3rem));
  margin: clamp(0.65rem, 2.2vw, 1.5rem);
  max-height: calc(100dvh - clamp(1.3rem, 4.4vw, 3rem));
  max-width: min(74rem, calc(100dvw - clamp(1.3rem, 4.4vw, 3rem)));
  padding: 0;
  place-self: center;
  width: min(74rem, calc(100dvw - clamp(1.3rem, 4.4vw, 3rem)));
}

.shell-modal-root[data-shell-modal-mode="card-share"] .drawer,
.shell-modal-root[data-shell-modal-mode="signal"] .drawer {
  height: 100%;
  margin: 0;
  max-height: 100%;
  max-width: min(28rem, 100dvw);
  width: min(28rem, 100dvw);
}

.shell-modal-root .drawer::before {
  color: #fff;
  content: "NYSA";
  font-family: var(--brand-font);
  font-size: clamp(2.1rem, 8vw, 4.8rem);
  font-weight: 900;
  line-height: 0.85;
  opacity: 0.9;
  pointer-events: none;
  position: absolute;
  right: clamp(1rem, 3vw, 1.8rem);
  text-shadow:
    0 0 0.35rem rgba(255, 255, 255, 0.88),
    0 0 1.2rem rgba(255, 255, 255, 0.46),
    0 0 2.4rem rgba(197, 167, 255, 0.24);
  top: clamp(0.8rem, 2vw, 1.25rem);
}

.drawer header,
.inspector header {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-width: 0;
}

.inspector header {
  border-bottom: 1px solid rgba(255, 221, 149, 0.22);
  min-height: 3rem;
  padding: 0.8rem 1rem;
}

.inspector .inspector-header {
  display: none;
}

.inspector header h2 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: clamp(1.1rem, 3.6vw, 1.65rem);
  line-height: 1;
  text-transform: uppercase;
}

.shell-modal-root .drawer header {
  border-bottom: 1px solid rgba(197, 167, 255, 0.24);
  min-height: 3.8rem;
  padding: clamp(0.85rem, 2vw, 1.3rem);
  padding-right: clamp(5.5rem, 20vw, 13rem);
}

.shell-modal-root .drawer header h2 {
  color: var(--accent);
  font-family: var(--display-font);
  font-size: clamp(1.15rem, 3.8vw, 2rem);
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.shell-modal-close {
  background: rgba(0, 0, 0, 0.58);
  border: 0;
  border-top: 1px solid rgba(255, 221, 149, 0.52);
  border-radius: 0;
  color: var(--accent);
  font-family: var(--ui-font);
  font-size: 0.88rem;
  font-weight: 800;
  min-height: calc(3.2rem + env(safe-area-inset-bottom, 0px));
  padding: 0.75rem 0.9rem calc(0.75rem + env(safe-area-inset-bottom, 0px));
  position: relative;
  text-transform: uppercase;
  width: 100%;
  z-index: 1;
}

.shell-modal-close:hover,
.shell-modal-close:focus-visible {
  background: rgba(255, 221, 149, 0.12);
  box-shadow: 0 0 1rem rgba(255, 221, 149, 0.18);
}

.drawer header h2,
.inspector header h2 {
  min-width: 0;
  overflow-wrap: anywhere;
}

.drawer-body,
.inspector-body {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-bottom: calc(4rem + env(safe-area-inset-bottom, 0px));
  -webkit-overflow-scrolling: touch;
}

.inspector-body {
  display: grid;
  align-items: stretch;
  justify-items: stretch;
  padding: 0;
  padding-bottom: 0;
}

.inspector-footer {
  bottom: 0;
  left: 0;
  min-width: 0;
  position: absolute;
  right: 0;
  z-index: 5;
}

.inspector-close {
  background: rgba(0, 0, 0, 0.54);
  border: 0;
  border-bottom: 1px solid rgba(197, 167, 255, 0.34);
  border-top: 1px solid rgba(255, 221, 149, 0.52);
  border-radius: 0;
  box-sizing: border-box;
  color: rgba(255, 247, 219, 0.78);
  font-family: var(--ui-font);
  font-size: 0.88rem;
  font-weight: 900;
  min-height: var(--inspector-close-height);
  padding: 0.75rem 0.9rem calc(0.75rem + env(safe-area-inset-bottom, 0px));
  text-transform: uppercase;
  width: 100%;
}

.inspector-close:hover,
.inspector-close:focus-visible {
  background: rgba(255, 221, 149, 0.12);
  box-shadow:
    0 0 1rem rgba(255, 221, 149, 0.2),
    0 1px 0 rgba(197, 167, 255, 0.3);
}

.inspector-root .quest-inspector-actions .button:first-child,
.inspector-root .offering-inspector-actions .button:first-child,
.inspector-root .small-card-back-offering-controls button,
.inspector-root .small-card-back-offering-controls .button {
  background:
    linear-gradient(180deg, rgba(255, 247, 219, 0.98), rgba(226, 190, 111, 0.94));
  border-color: rgba(23, 19, 20, 0.78);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.28) inset,
    0 0.42rem 1rem rgba(0, 0, 0, 0.28);
  color: #171314;
  font-weight: 950;
}

.shell-modal-root .drawer-body {
  padding: clamp(0.85rem, 2vw, 1.3rem);
  padding-bottom: clamp(1rem, 2vw, 1.4rem);
}

.shell-modal-root[data-shell-modal-mode="card-share"] .drawer-body,
.shell-modal-root[data-shell-modal-mode="signal"] .drawer-body {
  padding: clamp(0.5rem, 1.4vw, 0.85rem);
  padding-bottom: clamp(0.6rem, 1.4vw, 0.9rem);
}

.shell-route-modal-content {
  display: grid;
  gap: 1rem;
}

.card-share-modal-content,
.card-share-panel {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.card-share-panel {
  justify-items: stretch;
  text-align: center;
}

.card-share-panel h3 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: clamp(1.35rem, 6vw, 2rem);
  line-height: 1;
  margin: 0;
  overflow-wrap: anywhere;
}

.card-share-panel p {
  margin: 0;
}

.card-share-qr {
  align-items: center;
  aspect-ratio: 1;
  background: #fffaf0;
  border: 1px solid rgba(245, 222, 145, 0.72);
  box-shadow: 0 0.45rem 1.25rem rgba(0, 0, 0, 0.46);
  display: grid;
  justify-items: center;
  margin-inline: auto;
  max-width: min(17rem, 74vw);
  padding: 0.65rem;
  width: 100%;
}

.card-share-qr svg {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.card-share-url {
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: var(--muted);
  font-size: 0.78rem;
  overflow-wrap: anywhere;
  padding: 0.55rem;
  text-align: left;
}

.card-share-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.signal-modal-content,
.signal-modal-panel-v6 {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.signal-modal-panel-v6 {
  --signal-color: var(--frequency-color, var(--accent));
  color: var(--text);
}

.signal-modal-panel-v6 h3 {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: clamp(1.28rem, 5vw, 1.9rem);
  line-height: 1;
  margin: 0;
  overflow-wrap: anywhere;
}

.signal-modal-panel-v6 p {
  margin: 0;
  overflow-wrap: anywhere;
}

.signal-modal-actions-v6 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.signal-scope {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--frequency-color, var(--accent)) 12%, transparent), transparent),
    rgba(0, 0, 0, 0.48);
  border: 1px solid color-mix(in srgb, var(--frequency-color, var(--accent)) 46%, rgba(255, 255, 255, 0.12));
  display: block;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.signal-scope--modal {
  aspect-ratio: 2.35 / 1;
  min-height: 6rem;
}

.signal-scope--hover {
  height: 3.25rem;
}

.signal-scope svg {
  display: block;
  height: 100%;
  overflow: visible;
  width: 100%;
}

.signal-scope-baseline {
  fill: none;
  stroke: rgba(255, 255, 255, 0.16);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}

.signal-scope-wave {
  fill: none;
  filter: url(#signal-wave-glow-v6);
  opacity: 0.7;
  stroke: var(--signal-color, var(--frequency-color, var(--accent)));
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: calc(1.2px + (var(--signal-strength, 0.6) * 1.4px));
  vector-effect: non-scaling-stroke;
}

.card-signal-hover {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--frequency-color, var(--accent)) 14%, rgba(0, 0, 0, 0.84)), rgba(0, 0, 0, 0.94));
  border: 1px solid color-mix(in srgb, var(--frequency-color, var(--accent)) 58%, rgba(255, 255, 255, 0.14));
  box-shadow: 0 0.75rem 1.6rem rgba(0, 0, 0, 0.5), 0 0 1.2rem color-mix(in srgb, var(--frequency-color, var(--accent)) 16%, transparent);
  color: var(--text);
  display: grid;
  gap: 0.35rem;
  max-width: 13rem;
  padding: 0.55rem;
  pointer-events: none;
  position: fixed;
  width: 13rem;
  z-index: 1010;
}

.card-signal-hover strong,
.card-signal-hover small {
  display: block;
  line-height: 1.15;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-signal-hover strong {
  color: #fff7db;
  font-family: var(--display-font);
  font-size: 0.92rem;
}

.card-signal-hover small {
  color: var(--muted);
  font-size: 0.74rem;
}

.shell-route-modal-content .page-frame {
  min-height: auto;
  padding: 0;
}

.inspector-root .inspector {
  background: transparent;
  border: 0;
  box-shadow: none;
}

.inspector-root .inspector-body {
  height: 100%;
  max-height: 100%;
  min-height: 0;
  padding: 0;
}

.inspector-root .inspector-card-summary {
  align-items: center;
  display: grid;
  height: 100%;
  justify-items: center;
  max-height: 100%;
  min-height: 0;
  overflow: hidden;
}

.inspector-root .inspector-card-summary:has(.nysa-card.is-card-flipped) {
  align-items: start;
  overflow: hidden;
}

.inspector-root .inspector-detail--card-shell {
  background: transparent;
  border: 0;
  border-radius: 0;
  gap: 0;
  height: 100%;
  max-height: 100%;
  justify-items: stretch;
  min-height: 0;
  padding: 0;
}

.inspector-root .inspector-detail--card-shell.inspector-detail--with-editor {
  align-content: start;
  gap: clamp(0.85rem, 2vw, 1.2rem);
  height: auto;
  max-height: none;
  min-height: 100%;
  padding: 0 clamp(0.65rem, 2vw, 1.1rem) calc(var(--inspector-close-height, 3.8rem) + 1rem);
}

.inspector-root .inspector-detail--card-shell.inspector-detail--with-editor:not(.inspector-detail--with-context) .inspector-card-summary {
  height: var(--inspector-card-back-height, calc(100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px) - var(--inspector-close-height, 3.8rem)));
  min-height: 28rem;
}

.inspector-root .inspector-detail--card-shell.inspector-detail--with-editor .inspector-edit-panel {
  justify-self: center;
  max-width: min(48rem, calc(100dvw - 1.3rem));
  width: 100%;
}

.inspector-root .inspector-card-summary .nysa-card {
  --small-card-width: min(
    calc(100dvw - 3rem - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)),
    calc((100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px) - var(--inspector-close-height, 3.8rem) - var(--inspector-close-gap, 0.75rem) - env(safe-area-inset-bottom, 0px)) * 0.7142857)
  );
  height: auto;
  max-height: 100%;
  min-height: 0;
  width: var(--small-card-width);
}

.inspector-root .inspector-card-summary .card-flip-edge {
  right: 0;
}

.inspector-root .inspector-card-summary .card-flip-stage,
.inspector-root .inspector-card-summary .nysa-card__front,
.inspector-root .inspector-card-summary .card-container {
  height: auto;
  max-height: 100%;
  min-height: 0;
  width: var(--small-card-width);
}

.inspector-root .inspector-card-summary .card-container {
  aspect-ratio: 5 / 7;
}

.inspector-root .inspector-card-summary .nysa-card__back {
  height: auto;
  max-height: calc(100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px) - var(--inspector-close-height, 3.8rem) - var(--inspector-close-gap, 0.75rem) - env(safe-area-inset-bottom, 0px));
  min-height: calc(var(--small-card-width) * 1.4);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  width: var(--small-card-width);
}

.inspector-root .inspector-card-summary .nysa-card.is-card-flipped {
  align-self: start;
}

.inspector-root .inspector-card-summary .nysa-card.is-card-flipped,
.inspector-root .inspector-card-summary .nysa-card.is-card-flipped .card-flip-stage,
.inspector-root .inspector-card-summary .nysa-card.is-card-flipped .nysa-card__back {
  max-height: 100%;
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector {
  --inspector-card-back-height: calc(100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px) - var(--inspector-close-height, 3.8rem) - var(--inspector-close-gap, 0.125rem) - var(--inspector-card-top-offset, 0.875rem) - env(safe-area-inset-bottom, 0px));
  --small-card-width: min(
    calc(100dvw - 3.25rem - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)),
    calc(var(--inspector-card-back-height) * 0.7142857)
  );
  max-width: calc(100dvw - 3.25rem - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px));
  width: var(--small-card-width);
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .card-flip-stage,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .nysa-card__front,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .card-container,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .nysa-card__back {
  max-width: var(--small-card-width);
  width: var(--small-card-width);
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector.is-card-flipped,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector.is-card-flipped .card-flip-stage {
  height: var(--inspector-card-back-height);
  max-height: var(--inspector-card-back-height);
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector.is-card-flipped .nysa-card__back {
  height: var(--inspector-card-back-height);
  max-height: var(--inspector-card-back-height);
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-shell,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-shell *,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-stat-chips,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-action-row,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-contact-row {
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-shell {
  box-sizing: border-box;
  overflow-x: hidden;
  width: 100%;
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-stat-chips {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-action,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-contact-row a,
body .inspector-root .inspector-card-summary .nysa-card.nysa-card--inspector .small-card-back-contact-row b {
  white-space: normal;
}

body .inspector-root .inspector-card-summary > .card-flip-edge--inspector-rail {
  border-left: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 999px 0 0 999px;
  border-right: 0;
  bottom: var(--shell-bottom-height, 0px);
  position: fixed;
  right: 0;
  top: var(--shell-top-height, 0px);
  transform: none;
  width: 1.72rem;
  z-index: 1002;
}

body .inspector-root .inspector-card-summary > .card-flip-edge--inspector-rail:hover,
body .inspector-root .inspector-card-summary > .card-flip-edge--inspector-rail:focus-visible,
body .inspector-root .inspector-card-summary:has(.nysa-card.nysa-card--inspector.is-card-flipped) > .card-flip-edge--inspector-rail {
  transform: none;
}

.inspector-root .inspector-detail--with-context {
  gap: clamp(0.85rem, 2vw, 1.2rem);
  height: auto;
  max-height: none;
  min-height: 100%;
  padding: 0 clamp(0.65rem, 2vw, 1.1rem) calc(var(--inspector-close-height, 3.8rem) + 1rem);
}

.inspector-root .inspector-detail--with-context .inspector-card-summary {
  height: var(--inspector-card-back-height, calc(100dvh - var(--shell-top-height, 0px) - var(--shell-bottom-height, 0px) - var(--inspector-close-height, 3.8rem)));
  min-height: 28rem;
}

.inspector-root .inspector-detail--with-context .inspector-context-card,
.inspector-root .inspector-detail--with-context .quest-inspector-scroll {
  justify-self: center;
  max-width: min(48rem, calc(100dvw - 1.3rem));
  width: 100%;
}

.inspector-root .inspector-detail--with-context .contract-list dd,
.inspector-root .inspector-detail--with-context .small-card-back-rows dd {
  overflow-wrap: anywhere;
}

.offering-inspector-context .contract-list,
.quest-inspector-reward {
  align-items: stretch;
}

.offering-inspector-context .contract-list > div,
.quest-inspector-reward > div {
  min-width: 0;
}

.shell-route-modal-content .route-template {
  max-width: none;
}

.shell-route-modal-content :is(.transfer-surface, .offering-detail-surface, .offering-display-surface, .vendor-claim-surface) {
  display: grid;
  gap: 1rem;
}

.shell-route-modal-content .transfer-surface--one-off :is(
  .transfer-pending-panel,
  .transfer-quick-panel,
  .transfer-request-preview
) {
  display: none !important;
}

.shell-route-modal-content .transfer-surface--one-off.is-route-modal-section-contract :is(
  [data-transfer-share],
  [data-transfer-confirmation]
) {
  display: none !important;
}

.shell-route-modal-content .transfer-surface--one-off.is-route-modal-section-share :is(
  [data-transfer-contract-panel],
  [data-transfer-confirmation]
) {
  display: none !important;
}

.shell-route-modal-content .transfer-surface--one-off.is-route-modal-section-receipt :is(
  [data-transfer-contract-panel],
  [data-transfer-share]
) {
  display: none !important;
}

.shell-route-modal-content .transfer-surface--one-off .state-box[data-transfer-state]:empty,
.shell-route-modal-content .transfer-surface--one-off .state-box[data-transfer-state][hidden] {
  display: none !important;
}

.offering-detail-grid {
  grid-template-columns: minmax(0, 1fr);
}

.shell-modal-footer {
  border-top: 1px solid rgba(197, 167, 255, 0.18);
  display: block;
  margin: 0;
}

@media (max-width: 720px) {
  .inspector {
    height: 100%;
    margin: 0;
    max-height: 100%;
    max-width: 100dvw;
    width: 100dvw;
  }

  .inspector-stat-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .v6-shell {
    --shell-bottom-rail-height: 6.9rem;
    --shell-dom-nav-height: 2.15rem;
    --shell-dom-nav-offset: 0rem;
    --shell-masthead-height: 2.35rem;
    --shell-control-height: 2.65rem;
    --shell-masthead-tool-width: 2.35rem;
    --shell-tool-panel-height: 2.65rem;
    --shell-tool-panel-overlap: 0rem;
    --shell-notification-console-open-height: 8.4rem;
    --shell-top-height: calc(var(--shell-notification-console-height) + var(--shell-masthead-height));
    --route-sticky-top: 0rem;
  }

  body.has-dom-nav-rows-2 {
    --shell-dom-nav-height: 4.55rem;
  }

  body.has-dom-nav-rows-3 {
    --shell-dom-nav-height: 8.1rem;
  }

  .app-shell {
    display: block;
  }

  .app-main {
    padding: 0;
  }

  .quest-inspector-scroll {
    padding: 0.8rem;
  }

  .inspector-root .inspector-detail--with-context {
    padding-inline: 0.45rem;
  }

  .inspector-root .inspector-detail--with-context .inspector-card-summary {
    min-height: 24rem;
  }

  .inspector-root .inspector-detail--card-shell.inspector-detail--with-editor:not(.inspector-detail--with-context) .inspector-card-summary {
    min-height: 24rem;
  }

  .offering-inspector-contract,
  .quest-inspector-contract {
    grid-template-columns: minmax(0, 1fr);
  }

  .offering-inspector-qr,
  .quest-inspector-qr {
    justify-self: center;
    max-width: min(13rem, 72vw);
    min-height: 0;
    width: 100%;
  }

  .offering-inspector-actions,
  .quest-inspector-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .quest-inspector-reward {
    grid-template-columns: 1fr;
  }

  .quest-inspector-tasks li {
    grid-template-columns: 1.85rem minmax(0, 1fr);
  }

  .shell-dom-nav {
    gap: 0.2rem;
    justify-content: flex-start;
    padding-inline: 0.35rem;
  }

  .shell-dom-nav[data-dom-nav-mode="tools-only"] {
    display: flex;
  }

  body.has-shell-tools-nav .shell-workspace {
    padding-top: calc(var(--shell-top-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
  }

  body.has-shell-tools-nav .shell-layer-host {
    height: calc(100dvh - var(--shell-top-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
  }

  .shell-dom-nav > div {
    align-content: stretch;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    min-width: 0;
  }

  .shell-dom-nav > div button {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    padding-inline: 0.18rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .shell-notification-console-line {
    grid-template-columns: 3.8rem 3.7rem minmax(0, 1fr);
  }

  .shell-notification-console-action {
    display: none;
  }

  .shell-dom-nav[data-dom-nav-rows="2"] > div button,
  .shell-dom-nav[data-dom-nav-rows="3"] > div button {
    flex-basis: calc(25% - 0.25rem);
    max-width: none;
  }

  .app-nav {
    border-bottom: 1px solid var(--line);
    border-right: 0;
    max-height: none;
  }

  .v6-shell .app-nav {
    display: none;
  }

  .shell-topbar {
    align-items: center;
    border-bottom: 0;
    display: flex;
    gap: 0;
    height: 0;
    justify-content: stretch;
    min-height: 0;
    overflow: hidden;
    padding: 0;
    top: calc(var(--shell-notification-console-height) + var(--shell-masthead-height));
  }

  .shell-topbar.is-tools-open {
    height: var(--shell-tool-panel-height);
    min-height: var(--shell-tool-panel-height);
  }

  .shell-tools-toggle {
    align-items: center;
    display: inline-flex;
    align-self: center;
    flex: 0 0 3.25rem;
    height: auto;
    justify-content: center;
    margin: 0;
    min-width: 3.25rem;
    width: 3.25rem;
  }

  .shell-masthead-tools-toggle {
    display: none;
    flex: 0 0 var(--shell-masthead-tool-width);
    height: var(--shell-masthead-height);
    min-width: var(--shell-masthead-height);
    width: var(--shell-masthead-height);
  }

  .shell-tools-toggle::after {
    content: "";
    display: none;
  }

  .shell-topbar.is-tools-open .shell-tools-toggle::after {
    content: "";
  }

  .shell-masthead {
    padding-inline: 0.35rem;
  }

  .shell-masthead-logo {
    font-size: 1.05rem;
  }

  .shell-masthead-title {
    --masthead-title-nest: 0.78rem;
    font-size: 0.62rem;
    max-width: 48vw;
  }

  .shell-command-cluster {
    background: #000;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow:
      0 0 0 1px rgba(255, 255, 255, 0.035) inset,
      0 0.45rem 1.2rem rgba(0, 0, 0, 0.66);
    display: flex;
    gap: 0;
    height: var(--shell-tool-panel-height);
    left: 0;
    position: relative;
    right: 0;
    z-index: 10;
  }

  .shell-command-cluster .shell-icon-button {
    background: #000;
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: none;
    color: #fff;
    height: var(--shell-tool-panel-height);
    flex: 0 0 var(--shell-tool-panel-height);
    left: auto;
    position: static;
    right: auto;
    top: auto;
    width: var(--shell-tool-panel-height);
  }

  .shell-command-cluster .shell-icon-button:hover,
  .shell-command-cluster .shell-icon-button:focus-visible {
    border-color: rgba(255, 255, 255, 0.34);
    box-shadow:
      0 0 0 1px rgba(255, 255, 255, 0.05) inset,
      0 0 0.9rem rgba(255, 255, 255, 0.18);
  }

  .shell-command-cluster [data-shell-fullscreen-toggle] {
    order: 1;
  }

  .shell-command-cluster [data-shell-drawer-open="notifications"] {
    order: 2;
  }

  .shell-command-cluster [data-shell-drawer-open="settings"] {
    order: 3;
  }

  .shell-command-cluster [data-shell-drawer-open="session"] {
    background: #000 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-family: var(--brand-font);
    font-size: 1.05rem;
    font-weight: 900;
    flex: 1 1 auto;
    left: auto;
    min-width: 0;
    order: 4;
    position: static;
    transform: none;
    width: auto;
  }

  .shell-command-cluster [data-shell-drawer-open="session"] .shell-control-icon {
    display: none;
  }

  .shell-command-cluster [data-shell-drawer-open="session"] .shell-session-tool__name {
    color: #fff;
    display: block;
    font-family: var(--brand-font);
    font-weight: 900;
    letter-spacing: 0;
    max-width: 100%;
    text-shadow:
      0 0 0.35rem rgba(255, 255, 255, 0.9),
      0 0 1rem rgba(255, 255, 255, 0.58),
      0 0 1.8rem rgba(255, 255, 255, 0.28);
    text-transform: none;
  }

  .shell-command-cluster [data-shell-drawer-open="search"] {
    margin-left: 0;
    order: 5;
  }

  .shell-command-cluster [data-shell-drawer-open="nav"] {
    order: 6;
  }

  .shell-search-button {
    display: inline-flex;
  }

  .shell-session-tool {
    gap: 0.35rem;
    justify-content: center;
    padding-inline: 0.55rem;
  }

  .shell-session-tool__name {
    display: inline-block;
    font-family: var(--content-font);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0;
  }

  .shell-bottombar {
    display: grid;
    gap: 0.4rem;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    overflow: hidden;
    padding: 0.45rem;
  }

  .shell-status-cell {
    min-height: 5.7rem;
    min-width: 0;
    padding: 0.42rem 0.35rem;
  }

  .shell-status-cell small {
    font-size: 0.64rem;
    line-height: 1.05;
  }

  .shell-status-cell strong {
    font-size: 0.78rem;
    line-height: 1.1;
    overflow: hidden;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
    white-space: normal;
  }

  .nav-toggle {
    display: inline-flex;
    justify-content: center;
  }

  .app-nav:not(.is-open) .nav-list {
    display: none;
  }

  .page-frame {
    gap: 0;
  }

  .route-template {
    gap: 0;
  }

  h1 {
    font-size: clamp(1.75rem, 9vw, 2.35rem);
  }

  .page-actions {
    width: 100%;
  }

  .page-actions button {
    flex: 1 1 8rem;
  }

  .surface-panel,
  .state-box {
    padding: 0.55rem;
  }

  .page-frame > .surface-panel:first-of-type,
  .route-template > .surface-panel:first-of-type {
    margin-top: 0;
  }

  .compendium-toolbar,
  .deck-toolbar,
  .radio-toolbar,
  .journal-tools,
  .shell-action-rail,
  .quest-panel-header,
  .console-toolbar {
    border-left: 0;
    border-right: 0;
    box-shadow: 0 0.35rem 0.8rem rgba(0, 0, 0, 0.24);
    gap: 0.4rem;
    margin-inline: -0.55rem;
    padding: 0.4rem 0.5rem;
    top: var(--route-sticky-top, 2.75rem);
  }

  .shell-action-rail {
    border-top: 1px solid var(--line-soft);
    margin-inline: -0.55rem;
    overflow-x: auto;
    padding: 0.32rem 0.4rem;
  }

  .shell-action-rail__group {
    flex-wrap: nowrap;
  }

  .shell-action-rail__group.journal-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(7rem, 32%) auto;
    margin-inline: 0;
  }

  .shell-action-rail button,
  .shell-action-rail .button {
    min-height: 2rem;
    padding: 0.32rem 0.46rem;
  }

  .quest-admin-action-rail {
    margin-bottom: 0.55rem;
  }

  .quest-admin-create-actions,
  .quest-admin-festival-console > header .quest-card-actions {
    display: none;
  }

  .compendium-toolbar label,
  .radio-toolbar label,
  .console-toolbar label,
  .deck-toolbar label {
    gap: 0.18rem;
  }

  .compendium-toolbar span,
  .radio-toolbar span,
  .console-toolbar span,
  .deck-toolbar label span {
    font-size: 0.64rem;
  }

  .compendium-toolbar input,
  .compendium-toolbar select,
  .deck-toolbar input,
  .deck-toolbar select,
  .radio-toolbar input,
  .radio-toolbar select,
  .journal-tools input,
  .journal-tools select,
  .console-toolbar input,
  .console-toolbar select {
    min-height: 2rem;
    padding: 0.34rem 0.42rem;
  }

  .quest-board-panel {
    border-left: 0;
    border-right: 0;
    padding-top: 0;
  }

  .quest-admin-sticky-notice {
    margin-inline: 0;
  }

  .quest-admin-shell {
    border-left: 0;
    border-right: 0;
    gap: 0.65rem;
    padding-inline: 0.55rem;
  }

  .quest-admin-shell__header {
    background: transparent;
    border: 0;
    box-shadow: none;
    margin-inline: 0;
    padding: 0.35rem 0 0.45rem;
    position: static;
    top: auto;
    z-index: auto;
  }

  .quest-admin-shell__header .quest-tools {
    width: 100%;
  }

  .quest-admin-create-panel,
  .quest-admin-panel {
    margin-inline: 0;
    min-width: 0;
  }

  .quest-admin-create-panel > .nysa-compact-hero,
  .quest-admin-panel > header {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr);
  }

  .quest-admin-create-panel > .nysa-compact-hero h3,
  .quest-admin-panel > header h3,
  .quest-admin-shell__header h2 {
    line-height: 1.12;
    overflow-wrap: anywhere;
  }

  .quest-admin-funding-form {
    grid-template-columns: minmax(0, 1fr);
    padding: 0.62rem;
  }

  .quest-list,
  .home-quest-list,
  .home-notification-list,
  .journal-readout-list,
  .runtime-feed {
    gap: 0.45rem;
  }

  .quest-card,
  .home-quest-card,
  .home-notification-item,
  .journal-signal-card,
  .journal-readout-row,
  .collapsible-group,
  .quest-admin-row,
  .runtime-feed article {
    border-radius: 0;
    margin-inline: -0.55rem;
    padding: 0.55rem;
  }

  .compendium-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .deck-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .radio-player-panel,
  .inspector-action-preview,
  .radio-track,
  .radio-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .radio-now-art {
    max-width: 14rem;
    width: 100%;
  }

  .radio-track__actions {
    justify-content: flex-start;
  }

  .inspector-action-preview__buttons {
    justify-content: flex-start;
  }

  .journal-grid,
  .home-dashboard-grid,
  .home-dashboard-grid--summary,
  .journal-tools,
  .quest-panel-header,
  .quest-admin-workspace,
  .nysa-essentials,
  .quest-admin-summary,
  .quest-admin-notice-grid,
  .quest-admin-funding-meter dl,
  .quest-admin-escrow-chart > header,
  .quest-admin-escrow-chart__totals,
  .quest-admin-escrow-chart__source > summary,
  .quest-admin-escrow-chart__source > summary dl,
  .quest-essentials,
  .quest-admin-operator-grid,
  .quest-admin-lifecycle,
  .quest-admin-task-card > summary,
  .quest-scan-card,
  .quest-focus-card,
  .quest-admin-step-form,
  .quest-admin-step-list li,
  .quest-admin-editor-form,
  .quest-admin-create-form,
  .transfer-request-builder,
  .transfer-request-builder--quick,
  .transfer-share-grid,
  .quest-admin-qr-item,
  .qr-display-grid,
  .admin-ops-grid,
  .admin-ops-grid--kpis,
  .admin-ops-account-grid,
  .admin-account-edit-table,
  .admin-connected-editor,
  .admin-password-reset-form,
  .console-summary-grid,
  .console-status-grid,
  .console-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .compendium-toolbar {
    grid-template-columns: minmax(0, 1fr) minmax(6.75rem, 34%);
  }

  .deck-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .radio-toolbar {
    grid-template-columns: minmax(0, 1fr) minmax(5.75rem, 24%) minmax(5.75rem, 24%);
  }

  .journal-tools,
  .shell-action-rail__group.journal-tools,
  .quest-panel-header .journal-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(6.75rem, 34%);
    width: 100%;
  }

  .console-toolbar {
    grid-auto-flow: column;
    grid-auto-columns: minmax(6.25rem, max-content);
    grid-template-columns: minmax(10rem, 1fr);
    overflow-x: auto;
    scrollbar-width: none;
  }

  .console-toolbar::-webkit-scrollbar {
    display: none;
  }

  .compendium-toolbar label,
  .deck-toolbar label,
  .radio-toolbar label,
  .console-toolbar label,
  .journal-tools label {
    min-width: 0;
  }

  .compendium-toolbar span,
  .deck-toolbar label span,
  .radio-toolbar span,
  .console-toolbar span {
    display: none;
  }

  .radio-filter-count {
    display: none;
  }

  .quest-admin-rail {
    background: var(--surface);
    margin: -0.25rem -0.25rem 0;
    padding: 0.25rem;
    top: var(--shell-top-height, 0);
  }

  .quest-admin-create-form__wide {
    grid-column: auto;
  }

  .quest-admin-qr-actions {
    justify-content: flex-start;
  }

  .quest-admin-lifecycle {
    align-items: start;
  }

  .quest-list {
    gap: 0.55rem;
  }

  .shell-journal-layout,
  .quest-journal-layout {
    display: flex;
    gap: 0;
    margin-inline: -0.55rem;
    min-height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height) - 7.2rem);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .shell-journal-layout::-webkit-scrollbar,
  .quest-journal-layout::-webkit-scrollbar {
    display: none;
  }

  .shell-journal-index,
  .shell-journal-detail,
  .quest-journal-index,
  .quest-journal-detail {
    flex: 0 0 100%;
    scroll-snap-align: start;
    width: 100%;
  }

  .shell-journal-index,
  .quest-journal-index {
    border-right: 1px solid color-mix(in srgb, var(--accent) 42%, var(--line));
    max-height: inherit;
  }

  .shell-journal-detail,
  .quest-journal-detail {
    padding: 0;
  }

  .quest-journal-detail .quest-card {
    margin-inline: 0;
    min-height: 100%;
    padding: 0.55rem;
  }

  .compendium-journal-card-detail {
    grid-template-columns: minmax(0, 1fr);
    padding: 0.55rem;
  }

  .compendium-journal-card-meta,
  .quest-admin-journal-summary {
    gap: 0.55rem;
  }

  .card-metadata-grid,
  .offering-inspector-contract {
    grid-template-columns: minmax(0, 1fr);
  }

  .quest-admin-journal-detail {
    padding: 0;
  }

  .quest-admin-journal-summary {
    min-height: 100%;
    padding: 0.55rem;
  }

  .shell-journal-index__heading,
  .quest-journal-index__heading {
    padding: 0.45rem 0.55rem;
  }

  .shell-journal-index__list,
  .quest-journal-index__list {
    padding: 0.3rem;
  }

  .shell-journal-index-row,
  .quest-index-row {
    min-height: 2.25rem;
    padding: 0.32rem 0.35rem;
  }

  .quest-surface .journal-tabs {
    gap: 0.35rem;
  }

  .quest-surface .journal-tabs::before {
    flex: 0 0 100%;
  }

  .quest-card--player {
    padding: 0.75rem;
  }

  .quest-card--player .quest-card__hero {
    gap: 0.55rem;
  }

  .quest-card--player h3 {
    font-size: 1.08rem;
    line-height: 1.18;
  }

  .quest-card--player .quest-state-pill {
    font-size: 0.68rem;
    padding: 0.2rem 0.38rem;
  }

  .quest-card--player .quest-essentials--player {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .quest-card--player .quest-essentials--player div {
    padding: 0.42rem;
  }

  .quest-card--player .quest-essentials--player dt {
    font-size: 0.64rem;
  }

  .quest-card--player .quest-essentials--player dd {
    font-size: 0.82rem;
    line-height: 1.16;
  }

  .quest-card--player .quest-reward-receipt-line {
    font-size: 0.84rem;
    padding: 0.48rem 0.55rem;
  }

  .quest-card--player .quest-receipt-drawer {
    padding: 0.62rem;
  }

  .quest-card--player .quest-receipt-drawer .contract-list div {
    gap: 0.16rem;
    grid-template-columns: minmax(0, 1fr);
  }

  .quest-card--player .quest-receipt-drawer .contract-list dt {
    font-size: 0.62rem;
  }

  .quest-card--player .quest-receipt-drawer .contract-list dd {
    font-size: 0.82rem;
    line-height: 1.22;
  }

  .quest-card--player .quest-card-actions button {
    flex: 1 1 calc(50% - 0.5rem);
    min-height: 2.45rem;
  }

  .transfer-pending-card {
    gap: 0.6rem;
    padding: 0.65rem;
  }

  .transfer-pending-card__hero {
    gap: 0.5rem;
  }

  .transfer-pending-card__route {
    grid-template-columns: 1fr;
  }

  .transfer-simple-flow__route {
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr) minmax(4.25rem, auto) minmax(0, 1fr);
  }

  .transfer-simple-flow__party {
    font-size: 1.05rem;
  }

  .transfer-simple-flow__arrow span {
    font-size: 0.82rem;
  }

  .transfer-party-marks {
    grid-template-columns: 1fr;
  }

  .transfer-pending-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .transfer-pending-actions button {
    min-height: 2.9rem;
  }

  .journal-signal-card,
  .journal-readout-row {
    grid-template-columns: 3.75rem minmax(0, 1fr);
  }

  .home-notification-item {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .home-notification-item .shell-list-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .quest-admin-row {
    grid-template-columns: 0.22rem minmax(0, 1fr);
  }

  .quest-admin-row > .quest-card-actions,
  .quest-admin-row .shell-list-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .quest-admin-row > .quest-card-actions button,
  .quest-admin-row > button,
  .quest-admin-row > .button {
    justify-self: start;
    min-width: 4.75rem;
    white-space: nowrap;
  }

  .quest-card-actions {
    align-items: stretch;
  }

  .quest-card-actions > * {
    flex: 0 1 auto;
    min-width: 4.75rem;
  }

  .drawer,
  .inspector {
    border-left: 0;
    width: 100dvw;
  }

  .shell-modal-root .drawer {
    height: 100dvh;
    margin: 0;
    max-height: 100dvh;
    max-width: 100dvw;
    width: 100dvw;
  }

  .shell-modal-root[data-shell-modal-mode="card-share"] .drawer,
  .shell-modal-root[data-shell-modal-mode="signal"] .drawer {
    height: 100%;
    max-height: 100%;
  }

  .shell-modal-root .drawer header {
    min-height: 3.35rem;
    padding-right: 5.75rem;
  }

  .shell-modal-root .drawer::before {
    font-size: clamp(1.9rem, 12vw, 3.2rem);
    top: 0.85rem;
  }

  .scaffold-grid,
  .compendium-toolbar {
    display: grid;
  }
}

@media (max-width: 760px) {
  :is(
    [data-quest-admin-page],
    [data-quest-web-forge-page],
    [data-economy-admin-page],
    [data-admin-ops-page],
    [data-admin-movement-page],
    [data-signals-admin-page],
    [data-qr-display-page],
    [data-quest-qr-sheet-page]
  ) :is(.quest-card-actions, .shell-list-actions, .economy-admin-gate__actions, .transfer-action-buttons, .quest-qr-sheet-actions) {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
  }

  :is(
    [data-quest-admin-page],
    [data-quest-web-forge-page],
    [data-economy-admin-page],
    [data-admin-ops-page],
    [data-admin-movement-page],
    [data-signals-admin-page],
    [data-qr-display-page],
    [data-quest-qr-sheet-page]
  ) :is(.quest-card-actions, .shell-list-actions, .economy-admin-gate__actions, .transfer-action-buttons, .quest-qr-sheet-actions) > * {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  :is(
    [data-quest-admin-page],
    [data-quest-web-forge-page],
    [data-economy-admin-page],
    [data-admin-ops-page],
    [data-admin-movement-page],
    [data-signals-admin-page]
  ) .shell-action-rail__group:not(.journal-tools) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  :is([data-quest-admin-page], [data-quest-web-forge-page]) .quest-admin-create-form {
    align-items: stretch;
    grid-template-columns: minmax(0, 1fr);
  }

  :is([data-quest-admin-page], [data-quest-web-forge-page]) .quest-admin-create-form__wide {
    grid-column: auto;
  }

  [data-economy-admin-page] .economy-admin-search,
  :is([data-admin-ops-page], [data-admin-movement-page]) .quest-panel-header {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  [data-economy-admin-page] .economy-admin-search form,
  [data-admin-ops-page] .quest-panel-header .journal-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
  }

  [data-quest-web-forge-page] .quest-web-forge-web-card,
  [data-quest-qr-sheet-page] .quest-qr-sheet-grid,
  [data-qr-display-page] .qr-display-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  :is([data-home-dashboard], [data-compendium]) :is(.home-dashboard-grid, .home-dashboard-grid--summary, .compendium-toolbar) {
    grid-template-columns: minmax(0, 1fr);
  }

  [data-home-dashboard] :is(.home-quest-panel > header, .home-activity-panel > header, .home-quest-card header) {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  [data-home-dashboard] :is(.home-quest-panel > header .button, .home-activity-panel > header button, .home-status-card > .button, .home-status-card > button) {
    justify-content: center;
    width: 100%;
  }

  [data-home-dashboard] .home-notification-item {
    grid-template-columns: minmax(0, 1fr);
  }

  [data-compendium] .card-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(13rem, 100%), 1fr));
  }

  [data-compendium] .compendium-journal-card-detail {
    grid-template-columns: minmax(0, 1fr);
  }

  [data-compendium] .compendium-journal-card-detail .nysa-card {
    max-width: min(17rem, 100%);
  }
}

.page-frame--standard:has([data-brochure-page]),
.page-frame--standard:has([data-laboratory-page]),
.page-frame--standard:has([data-audience-page]),
.page-frame--standard:has([data-lab-notes-page]) {
  max-width: 118rem;
}

.brochure-surface,
.audience-surface {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 58rem);
  justify-content: center;
}

.brochure-main,
.laboratory-surface {
  display: grid;
  gap: 1.15rem;
  min-width: 0;
}

.brochure-sidebar {
  align-self: start;
  position: sticky;
  top: 1rem;
}

.brochure-footer a,
.brochure-note a {
  color: var(--text);
  text-decoration: none;
}

.brochure-sidebar {
  display: grid;
  gap: 0.75rem;
}

.brochure-hero,
.laboratory-hero {
  background:
    linear-gradient(180deg, rgba(216, 184, 90, 0.14), rgba(69, 200, 159, 0.055) 46%, transparent),
    var(--surface);
  display: grid;
  gap: 0.85rem;
  padding: clamp(1.1rem, 4vw, 2rem);
}

.brochure-hero h1,
.laboratory-hero h1 {
  max-width: 11ch;
}

.brochure-subtitle {
  color: var(--accent);
  font-family: var(--display-font);
  font-size: clamp(1.25rem, 3vw, 1.85rem);
  line-height: 1.1;
  margin: 0;
}

.brochure-hero p:not(.eyebrow):not(.brochure-subtitle),
.laboratory-hero p:not(.eyebrow):not(.brochure-subtitle) {
  font-size: 1.08rem;
  line-height: 1.65;
  margin-bottom: 0;
  max-width: 62ch;
}

.brochure-hero-list {
  display: grid;
  gap: 0.35rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.brochure-hero-list li {
  border-left: 0.2rem solid color-mix(in srgb, var(--accent) 72%, transparent);
  padding-left: 0.65rem;
}

.brochure-actions {
  margin-top: 0.2rem;
}

.brochure-journey-grid,
.brochure-nearby-grid,
.quest-preview-hero {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.brochure-journey-card {
  background: color-mix(in srgb, var(--surface-strong) 82%, transparent);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--text);
  display: grid;
  gap: 0.35rem;
  min-height: 9rem;
  padding: 0.95rem;
  text-decoration: none;
}

.brochure-journey-card:hover,
.brochure-journey-card:focus-visible {
  border-color: color-mix(in srgb, var(--accent) 72%, var(--line));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent);
}

.brochure-journey-card span,
.quest-wallet-preview span {
  color: var(--accent);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.brochure-journey-card strong {
  font-family: var(--display-font);
  font-size: clamp(1.25rem, 2.5vw, 1.65rem);
  line-height: 1.05;
}

.brochure-journey-card small,
.quest-wallet-preview small {
  color: var(--muted);
  line-height: 1.45;
}

.button--quiet {
  background: color-mix(in srgb, var(--surface) 88%, transparent);
}

.brochure-section {
  display: grid;
  gap: 0.75rem;
  scroll-margin-top: 1rem;
}

.brochure-section-heading {
  border-bottom: 1px solid var(--line-soft);
  padding: 0.2rem 0 0.45rem;
}

.brochure-section-heading h2 {
  font-family: var(--display-font);
  font-size: clamp(1.35rem, 2.2vw, 1.9rem);
  line-height: 1.08;
  margin: 0;
}

.brochure-audience-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.brochure-card-hand {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-height: 16rem;
  padding: 1.4rem 1rem;
}

.brochure-card-hand .nysa-card {
  justify-self: center;
  --small-card-width: 12.5rem;
}

.brochure-card-hand .nysa-card:nth-child(1) {
  transform: rotate(-8deg) translateX(0.9rem);
}

.brochure-card-hand .nysa-card:nth-child(2) {
  transform: rotate(-3deg) translateY(-0.5rem);
}

.brochure-card-hand .nysa-card:nth-child(3) {
  transform: rotate(3deg) translateY(-0.45rem);
}

.brochure-card-hand .nysa-card:nth-child(4) {
  transform: rotate(8deg) translateX(-0.9rem);
}

.brochure-card-hand--flat .nysa-card {
  transform: none !important;
}

.brochure-real-card-row {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-items: center;
}

.brochure-real-card-row .nysa-card {
  --small-card-width: 14rem;
}

.quest-preview-hero {
  align-items: stretch;
  grid-template-columns: minmax(0, 1fr) minmax(13rem, 0.35fr);
}

.quest-preview-hero--simple {
  grid-template-columns: minmax(0, 1fr);
}

.wallet-loop-card {
  align-content: space-between;
  display: grid;
  gap: 0.75rem;
  min-width: 0;
  position: relative;
}

.wallet-loop-card__icon {
  pointer-events: none;
  position: absolute;
  right: 0.85rem;
  top: 0.75rem;
  width: 2.6rem;
}

.wallet-loop-card__icon.home-scroll {
  height: 0.62rem;
  transform: rotate(10deg);
  transform-origin: right top;
  width: 2.75rem;
}

.wallet-loop-card__icon.home-scroll::before,
.wallet-loop-card__icon.home-scroll::after {
  height: 0.78rem;
  width: 0.46rem;
}

.wallet-loop-card__icon.home-scroll::before {
  left: -0.28rem;
}

.wallet-loop-card__icon.home-scroll::after {
  right: -0.28rem;
}

.wallet-loop-card h2 {
  margin: 0;
}

.quest-preview-hero h2 {
  font-family: var(--display-font);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1.05;
  margin: 0;
}

.quest-wallet-preview {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--accent) 18%, transparent), transparent),
    color-mix(in srgb, var(--surface-strong) 86%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent) 42%, var(--line));
  border-radius: 8px;
  display: grid;
  gap: 0.35rem;
  padding: 0.9rem;
}

.quest-wallet-preview strong {
  font-family: var(--display-font);
  font-size: clamp(1.55rem, 3vw, 2.2rem);
  line-height: 1;
}

.brochure-audience-selector {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.brochure-audience-selector label {
  display: grid;
  gap: 0.35rem;
}

.brochure-audience-selector label span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.brochure-audience-selector select {
  background: rgba(0, 0, 0, 0.42);
  border: 1px solid var(--line);
  color: var(--text);
  font: inherit;
  min-height: var(--profile-control-min-height);
  padding: 0.55rem 0.65rem;
  width: 100%;
}

.brochure-wallet-card,
.brochure-audience-detail {
  display: grid;
  gap: 0.8rem;
}

.brochure-wallet-card h3,
.brochure-mini-profile h3 {
  font-family: var(--display-font);
  font-size: 1.35rem;
  line-height: 1.08;
  margin: 0;
}

.brochure-artifact-stats,
.brochure-balance,
.brochure-mini-profile dl {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.brochure-artifact-stats div,
.brochure-balance div,
.brochure-mini-profile dl div {
  background: color-mix(in srgb, var(--surface-strong) 74%, transparent);
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  padding: 0.65rem;
}

.brochure-artifact-stats dt,
.brochure-balance dt,
.brochure-mini-profile dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.brochure-artifact-stats dd,
.brochure-balance dd,
.brochure-mini-profile dd {
  font-weight: 800;
  margin: 0.15rem 0 0;
}

.brochure-checklist,
.brochure-ledger {
  display: grid;
  gap: 0.45rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.brochure-checklist li,
.brochure-ledger li {
  align-items: center;
  background: color-mix(in srgb, var(--surface-strong) 68%, transparent);
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  display: flex;
  gap: 0.55rem;
  justify-content: space-between;
  padding: 0.55rem 0.65rem;
}

.brochure-checklist li::before {
  color: var(--muted);
  content: "";
  border: 1px solid var(--line);
  display: inline-block;
  height: 0.85rem;
  width: 0.85rem;
}

.brochure-checklist li.is-complete::before {
  background: var(--accent-2);
  border-color: var(--accent-2);
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--surface-strong) 78%, transparent);
}

.brochure-artifact-pair {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.brochure-wallet-card h4 {
  margin: 0.2rem 0 0;
}

.brochure-ledger li {
  align-items: start;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: start;
}

.brochure-ledger span {
  color: var(--muted);
}

.brochure-audience-accordion {
  display: grid;
  gap: 0.75rem;
}

.brochure-audience-detail summary {
  cursor: pointer;
  font-family: var(--display-font);
  font-size: 1.35rem;
  line-height: 1.08;
}

.brochure-audience-detail[open] {
  border-color: color-mix(in srgb, var(--accent-2) 42%, var(--line));
}

.brochure-mini-collection,
.brochure-quest-chain {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.brochure-mini-collection span,
.brochure-quest-chain span {
  background: color-mix(in srgb, var(--surface-strong) 72%, transparent);
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  color: var(--text);
  padding: 0.45rem 0.6rem;
}

.brochure-quest-chain span:not(:last-child)::after {
  color: var(--muted);
  content: ">";
  margin-left: 0.45rem;
}

.brochure-mini-profile {
  background: color-mix(in srgb, var(--surface-strong) 72%, transparent);
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  display: grid;
  gap: 0.7rem;
  padding: 0.75rem;
}

.brochure-audience-card {
  background: color-mix(in srgb, var(--surface-strong) 78%, transparent);
  border: 1px solid var(--line);
  color: var(--text);
  display: grid;
  gap: 0.35rem;
  min-height: 8.4rem;
  padding: 0.9rem;
  text-decoration: none;
}

.brochure-audience-card:hover,
.brochure-audience-card:focus-visible {
  border-color: var(--nysa-state-color, var(--accent-2));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--nysa-state-color, var(--accent-2)) 42%, transparent);
}

.brochure-audience-card strong,
.brochure-guide-card h3,
.brochure-copy-card h3,
.brochure-callout h3,
.brochure-note h2 {
  font-family: var(--display-font);
  letter-spacing: 0;
}

.brochure-audience-card strong {
  font-size: 1.25rem;
}

.brochure-audience-card span {
  color: var(--muted);
  line-height: 1.45;
}

.brochure-guide-card,
.brochure-copy-card,
.brochure-callout,
.brochure-note,
.audience-surface {
  line-height: 1.62;
}

.brochure-guide-card h3,
.brochure-copy-card h3,
.laboratory-grid h3 {
  font-size: 1.25rem;
  margin: 0 0 0.45rem;
}

.brochure-guide-card p:last-child,
.brochure-copy-card p:last-child,
.brochure-callout p:last-child,
.brochure-note p:last-child {
  margin-bottom: 0;
}

.brochure-guide-card ul,
.brochure-copy-card ul,
.brochure-callout ul {
  display: grid;
  gap: 0.3rem;
  margin: 0.25rem 0 0.8rem;
  padding-left: 1.1rem;
}

.brochure-faq-pair,
.brochure-faq-list {
  display: grid;
  gap: 0.6rem;
  margin-top: 0.8rem;
}

.brochure-faq-list {
  margin-top: 0;
}

.brochure-callout {
  border-color: color-mix(in srgb, var(--accent) 48%, var(--line));
}

.brochure-callout .button {
  justify-self: start;
  margin-top: 0.2rem;
}

.brochure-note {
  display: grid;
  gap: 0.55rem;
}

.brochure-note h2 {
  font-size: 1.05rem;
  margin: 0;
}

.brochure-note button,
.brochure-note .button {
  justify-self: start;
}

.brochure-footer {
  align-items: center;
  border-top: 1px solid var(--line-soft);
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  justify-content: space-between;
  padding: 1rem 0 0.25rem;
}

@media (max-width: 1080px) {
  .brochure-surface {
    grid-template-columns: minmax(0, 1fr);
  }

  .brochure-sidebar {
    position: static;
  }
}

@media (max-width: 760px) {
  .page-frame--standard:has([data-brochure-page]),
  .page-frame--standard:has([data-laboratory-page]),
  .page-frame--standard:has([data-audience-page]),
  .page-frame--standard:has([data-lab-notes-page]) {
    max-width: 100%;
  }

  .brochure-surface,
  .audience-surface {
    grid-template-columns: minmax(0, 1fr);
  }

  .brochure-sidebar {
    grid-column: auto;
  }

  .brochure-hero {
    padding: 1rem;
  }

  .brochure-actions,
  .brochure-journey-grid,
  .brochure-nearby-grid,
  .brochure-audience-selector,
  .brochure-audience-grid,
  .brochure-artifact-pair,
  .brochure-real-card-row,
  .brochure-artifact-stats,
  .brochure-balance,
    .brochure-mini-profile dl,
    .laboratory-grid,
    .quest-preview-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .laboratory-notes-callout,
  .laboratory-section-heading,
  .laboratory-domain-grid,
  .laboratory-status-key,
  .laboratory-status-key dl,
  .laboratory-decision-queue,
  .lab-notes-reading-key,
  .lab-notes-reading-key dl,
  .lab-note-layout,
  .lab-note-footer {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-atlas-key,
  .lab-atlas-route-list,
  .lab-glossary-grid,
  .lab-data-atlas__summary,
  .lab-data-boundary,
  .lab-data-record,
  .lab-project-index__controls,
  .lab-authority-explorer__presets,
  .lab-authority-explorer__controls {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-project-index__controls > p {
    margin: 0;
    min-width: 0;
    text-align: left;
  }

  .lab-authority-explorer__chain {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-authority-explorer__chain > div {
    min-height: 0;
  }

  .lab-authority-explorer__chain > div:not(:last-child)::after {
    bottom: -0.68rem;
    content: "↓";
    left: 50%;
    right: auto;
    top: auto;
    transform: translateX(-50%);
  }

  .lab-domain-card[data-lab-domain="creation"] {
    grid-column: auto;
  }

  .lab-domain-card > header {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .lab-domain-status {
    grid-column: 2;
    justify-self: start;
    text-align: left;
  }

  .lab-note-toc {
    position: static;
  }

  .lab-note-toc ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lab-note-toc li {
    border-bottom: 1px solid var(--line-soft);
  }

  .lab-membership-map,
  .lab-note-definition-grid,
  .lab-library-route-grid,
  .lab-library-source-list,
  .lab-authority-doctrine,
  .lab-wardship-grid,
  .lab-price-notes,
  .lab-economy-loop,
  .lab-economy-rules,
  .lab-roots-allocation,
  .lab-rootwater-states,
  .lab-reservoir-compare,
  .lab-aquifer-flow,
  .lab-transaction-grid,
  .lab-wallet-class-grid,
  .lab-harvest-gates,
  .lab-reserve-policy,
  .lab-risk-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-economy-loop > div::after,
  .lab-economy-loop > div:nth-child(3)::after {
    bottom: -0.5rem;
    content: "↓";
    display: block;
    left: 50%;
    right: auto;
    top: auto;
    transform: translate(-50%, 50%);
  }

  .lab-economy-loop > div:last-child::after {
    display: none;
  }

  .lab-rootwater-states > span {
    justify-self: center;
    transform: rotate(90deg);
  }

  .lab-wardship-flow {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-wardship-flow > span {
    justify-self: center;
  }

  .lab-authority-doctrine {
    gap: 0.5rem;
  }

  .lab-authority-doctrine > span:not(:last-child)::after {
    bottom: -0.55rem;
    left: 50%;
    right: auto;
    top: auto;
    transform: translateX(-50%) rotate(90deg);
  }

  .lab-standing-line {
    grid-template-columns: minmax(0, 1fr);
    padding-left: 0.45rem;
  }

  .lab-standing-line li {
    border-left: 0.2rem solid var(--line);
    border-top: 0;
    padding: 0 0 0.8rem 0.85rem;
  }

  .lab-standing-line li::before {
    left: -0.48rem;
    top: 0;
  }

  .lab-standing-line li.is-active {
    border-color: var(--accent-2);
  }

  .lab-role-table__header {
    display: none !important;
  }

  .lab-role-table > div,
  .lab-price-table > div,
  .lab-denomination-table > div {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-price-table__header,
  .lab-denomination-table__header {
    display: none !important;
  }

  .brochure-card-hand {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 0;
    padding-inline: 0;
  }

  .brochure-card-hand .nysa-card {
    transform: none !important;
  }

  .brochure-actions > * {
    justify-content: center;
    width: 100%;
  }

  .brochure-audience-card {
    min-height: 0;
  }
}

@media (max-width: 520px) {
  .lab-note-index-card {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .lab-note-index-card__open {
    grid-column: 2;
  }

  .lab-note-toc ol,
  .lab-never-grid ul {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-decision-stack > div,
  .lab-open-questions li,
  .lab-decision-register > li {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-decision-workbench__summary {
    grid-template-columns: 1fr;
  }

  .lab-decision-filter-controls {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-source-atlas__registry .lab-filter-toolbar,
  .lab-source-atlas__grid,
  .lab-runtime-filter,
  .lab-runtime-component,
  .lab-data-boundary dl > div,
  .lab-model-candidates li,
  .lab-knowledge-graph__focus,
  .lab-knowledge-graph__spokes,
  .lab-simulator-compare__controls,
  .lab-rain-explorer__controls,
  .lab-rain-explorer__summary,
  .lab-rain-period,
  .lab-treasury-explorer__controls,
  .lab-treasury-explorer__summary,
  .lab-treasury-explorer__ceilings > div {
    grid-template-columns: minmax(0, 1fr);
  }

  .lab-knowledge-graph__focus > div:first-child {
    justify-items: start;
  }

  .lab-rain-period > span {
    text-align: left;
  }

  .lab-treasury-explorer__ceilings > div > strong {
    text-align: left;
  }

  .lab-decision-register > li > a {
    justify-self: start;
  }

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

  .lab-authority-explorer__controls form {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media print {
  @page {
    margin: 0.45in;
  }

  .shell-nav,
  .shell-sidebar,
  .app-nav,
  .shell-topbar,
  .shell-masthead,
  .shell-bottombar,
  .shell-dom-nav,
  .shell-status-bar,
  .quest-qr-sheet-actions,
  [data-print-hidden] {
    display: none !important;
  }

  html,
  body,
  .v6-shell,
  .app-shell,
  .shell-workspace,
  .shell-layer-host,
  .shell-layer-host > *,
  .app-main,
  .page-frame,
  .surface-panel,
  .quest-qr-sheet-surface,
  .quest-qr-sheet-panel {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  .app-shell,
  .shell-workspace,
  .shell-layer-host,
  .app-main,
  .page-frame,
  .quest-qr-sheet-surface,
  .quest-qr-sheet-panel {
    display: block !important;
  }

  .v6-shell,
  .app-shell,
  .shell-workspace,
  .shell-layer-host,
  .app-main,
  .page-frame,
  .surface-panel,
  .quest-qr-sheet-surface,
  .quest-qr-sheet-panel {
    background: #ffffff !important;
    color: #111111 !important;
    box-shadow: none !important;
  }

  .app-main,
  .surface-panel,
  .quest-qr-sheet-panel {
    padding: 0 !important;
  }

  .quest-qr-sheet-grid {
    display: block !important;
  }

  .quest-web-print-node {
    break-after: page;
    display: block !important;
    page-break-after: always;
  }

  .quest-web-print-node:last-of-type {
    break-after: auto;
    page-break-after: auto;
  }

  .quest-web-print-node__head {
    border-bottom-color: #999999 !important;
    margin-bottom: 0.18in !important;
  }

  .quest-web-print-grid {
    display: block !important;
  }

  .quest-qr-sheet-card {
    background: #ffffff !important;
    border-color: #999999 !important;
    display: inline-block !important;
    margin: 0 0.12in 0.22in 0 !important;
    page-break-inside: avoid;
    break-inside: avoid;
    vertical-align: top;
    width: calc(50% - 0.16in) !important;
  }

  .quest-qr-sheet-card:nth-of-type(2n) {
    break-after: page;
    page-break-after: always;
  }

  .quest-qr-sheet-card:last-child {
    break-after: auto;
    page-break-after: auto;
  }

  .quest-qr-sheet-code {
    min-height: 0 !important;
    padding: 0.12in !important;
  }

  .quest-qr-sheet-code svg {
    width: min(3.25in, 100%) !important;
  }
}

/* V6 Event Operations production lifecycle */
.house-event-operations,
.event-governed-workbench {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}

.house-event-operations [data-event-operation-actions] {
  position: sticky;
  top: 0.5rem;
  z-index: 8;
  padding: 0.65rem;
  border: 1px solid var(--line, rgba(56, 43, 35, 0.2));
  border-radius: 0.8rem;
  background: color-mix(in srgb, var(--surface, #fffaf0) 94%, transparent);
  backdrop-filter: blur(8px);
}

.house-event-operations form[data-governed-form],
.event-governed-workbench form[data-governed-form] {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 0.65rem;
  min-width: 0;
  margin-block: 0.55rem;
}

.house-event-operations form[data-governed-form] label,
.event-governed-workbench form[data-governed-form] label {
  display: grid;
  gap: 0.25rem;
  min-width: min(100%, 13rem);
  flex: 1 1 13rem;
}

.house-event-operations :is(input, select, textarea, button, .button),
.event-governed-workbench :is(input, select, textarea, button, .button) {
  min-height: 2.75rem;
  max-width: 100%;
}

.house-event-operations :is(input, select, textarea),
.event-governed-workbench :is(input, select, textarea) {
  width: 100%;
  min-width: 0;
}

.house-event-operations .admin-ops-row,
.event-governed-workbench .admin-ops-row {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 680px) {
  .house-event-operations [data-event-operation-actions] {
    top: 0.25rem;
    max-height: min(44vh, 19rem);
    overflow: auto;
    overscroll-behavior: contain;
  }

  .house-event-operations form[data-governed-form],
  .event-governed-workbench form[data-governed-form] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .house-event-operations form[data-governed-form] > *,
  .event-governed-workbench form[data-governed-form] > * {
    width: 100%;
  }

  .house-event-operations .quest-qr-sheet-code {
    width: min(84vw, 22rem);
    height: min(84vw, 22rem);
  }
}

@media (max-width: 720px) {
  body.shell-profile-rpg .shell-status-icon {
    font-size: 3.05rem;
    width: min(3.45rem, 100%);
  }

  body.shell-profile-rpg .shell-status-copy {
    display: grid;
  }
}

.offering-bazaar-front {
  display: grid;
  gap: 14px;
}

.offering-bazaar-hero {
  align-items: end;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.offering-bazaar-hero h2 {
  max-width: 48rem;
}

.offering-bazaar-hero .muted {
  max-width: 58rem;
}

.offering-bazaar-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: end;
}

.offering-bazaar-metrics,
.offering-bazaar-explainer,
.offering-bazaar-discovery {
  display: grid;
  gap: 12px;
}

.offering-bazaar-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.offering-bazaar-metrics article,
.offering-bazaar-explainer article,
.offering-bazaar-discovery > section,
.offering-bazaar-feature,
.offering-bazaar-category {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  min-width: 0;
}

.offering-bazaar-metrics article {
  display: grid;
  gap: 2px;
  padding: 12px;
}

.offering-bazaar-metrics span {
  color: var(--accent);
  font-family: var(--display-font);
  font-size: clamp(1.6rem, 4vw, 2.35rem);
  line-height: 1;
}

.offering-bazaar-metrics small,
.offering-bazaar-feature small,
.offering-bazaar-category small {
  color: var(--muted);
}

.offering-bazaar-explainer {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.offering-bazaar-explainer article {
  padding: 12px;
}

.offering-bazaar-explainer h3,
.offering-bazaar-discovery h3 {
  margin-block: 0.15rem 0.25rem;
}

.offering-bazaar-discovery {
  grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
}

.offering-bazaar-discovery > section {
  display: grid;
  gap: 10px;
  padding: 12px;
}

.offering-bazaar-feature-list,
.offering-bazaar-category-list {
  display: grid;
  gap: 8px;
}

.offering-bazaar-feature,
.offering-bazaar-category {
  color: inherit;
  display: grid;
  gap: 4px;
  padding: 10px;
  text-align: left;
  text-decoration: none;
}

.offering-bazaar-category {
  cursor: pointer;
  width: 100%;
}

.offering-bazaar-feature span,
.offering-bazaar-category span {
  color: var(--accent-2);
  font-family: var(--mono-font);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.offering-bazaar-feature strong,
.offering-bazaar-category strong,
.offering-bazaar-feature small,
.offering-bazaar-category small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.offering-bazaar-feature:hover,
.offering-bazaar-feature:focus-visible,
.offering-bazaar-category:hover,
.offering-bazaar-category:focus-visible {
  border-color: color-mix(in srgb, var(--accent) 58%, var(--line-soft));
}

.offering-market-header {
  margin-bottom: 12px;
}

@media (max-width: 820px) {
  .offering-bazaar-hero,
  .offering-bazaar-discovery {
    grid-template-columns: minmax(0, 1fr);
  }

  .offering-bazaar-actions {
    justify-content: start;
  }

  .offering-bazaar-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .offering-bazaar-explainer {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 460px) {
  .offering-bazaar-actions > * {
    justify-content: center;
    width: 100%;
  }

  .offering-bazaar-metrics {
    grid-template-columns: minmax(0, 1fr);
  }
}

.offering-create-form,
.offering-tip-presets {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.offering-create-form label,
.offering-note,
.offering-custom-tip {
  display: grid;
  gap: 6px;
}

.offering-create-form textarea {
  min-height: 96px;
  resize: vertical;
}

.offering-checkbox {
  align-items: center;
  display: flex !important;
  flex-direction: row;
  gap: 8px;
}

.offering-card {
  border-radius: 8px;
  display: grid;
  gap: 12px;
}

.offering-card--insufficient {
  opacity: 0.72;
}

.offering-tip-presets {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  padding: 12px;
}

.offering-tip-presets label {
  align-items: center;
  display: flex;
  gap: 8px;
}

.offering-qr svg {
  background: #fffaf0;
  border-radius: 8px;
  display: block;
  height: auto;
  max-width: min(320px, 100%);
  padding: 10px;
}

.offering-wallet-grid {
  display: grid;
  gap: 10px;
}

.nysa-workbench-grid,
.market-admin-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(280px, 0.9fr) minmax(320px, 1.1fr);
}

.nysa-workbench-create,
.market-admin-create {
  grid-column: 1 / -1;
}

.nysa-workbench-form .vendor-redemption-form__wide,
.market-admin-form .vendor-redemption-form__wide {
  grid-column: 1 / -1;
}

.market-admin-offering-list {
  display: grid;
  gap: 10px;
}

.nysa-workbench-row,
.market-admin-row {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
}

.nysa-workbench-row.is-active,
.market-admin-row.is-active {
  border-color: var(--accent, #d7bc68);
}

.nysa-workbench-row > button,
.market-admin-row > button {
  align-items: start;
  background: transparent;
  border: 0;
  color: inherit;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 0;
  text-align: left;
  width: 100%;
}

.nysa-workbench-row strong,
.nysa-workbench-row small,
.market-admin-row strong,
.market-admin-row small {
  display: block;
}

.nysa-workbench-row small,
.market-admin-row small {
  color: var(--muted, rgba(255, 255, 255, 0.62));
}

.nysa-workbench-row__meta,
.market-admin-row__meta {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.nysa-state-pill--accent {
  border-color: rgba(215, 188, 104, 0.55);
}

.nysa-state-pill--success {
  border-color: rgba(66, 214, 164, 0.55);
}

@media (max-width: 860px) {
  .nysa-workbench-grid,
  .market-admin-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

body.shell-simple-rpg .shell-bottombar {
  grid-auto-columns: unset;
  grid-auto-flow: column;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
}

body.shell-simple-rpg {
  --shell-control-height: 0rem;
  --shell-dom-nav-height: 0rem;
  --shell-dom-nav-offset: 0rem;
  --shell-dom-nav-tabs-height: 0rem;
  --shell-notification-console-height: 0rem;
  --shell-tool-panel-height: 0rem;
  --shell-tool-panel-overlap: 0rem;
  --shell-top-height: var(--shell-masthead-height);
}

body.shell-simple-rpg .shell-status-cell:not([data-shell-player-rail]) {
  display: none !important;
}

body.shell-simple-rpg .shell-topbar,
body.shell-simple-rpg .shell-masthead-tools-toggle,
body.shell-simple-rpg .shell-notification-console,
body.shell-simple-rpg .shell-diagnostics-strip {
  display: none !important;
}

body.shell-simple-rpg .shell-workspace,
body.shell-simple-rpg.has-shell-tools-nav .shell-workspace,
body.shell-simple-rpg.has-shell-tools-open .shell-workspace {
  padding-top: var(--shell-top-height);
}

body.shell-simple-rpg .shell-layer-host,
body.shell-simple-rpg.has-shell-tools-nav .shell-layer-host,
body.shell-simple-rpg.has-shell-tools-open .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-bottom-height));
}

body.shell-simple-rpg.has-dom-nav .shell-workspace {
  padding-top: calc(var(--shell-top-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.shell-simple-rpg.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

body.shell-admin-session .shell-masthead-tools-toggle {
  display: inline-flex;
}

body.shell-dom-nav-placement-bottom .shell-dom-nav {
  border-bottom: 0;
  border-top: 1px solid var(--line);
  bottom: var(--shell-bottom-height);
  top: auto;
}

body.shell-dom-nav-placement-bottom.has-dom-nav .shell-workspace {
  padding-block:
    var(--shell-top-height)
    calc(var(--shell-bottom-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.shell-dom-nav-placement-bottom.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

body.shell-dom-nav-placement-bottom.shell-diagnostics-enabled.has-dom-nav .shell-workspace {
  padding-block:
    calc(var(--shell-top-height) + var(--shell-diagnostics-height))
    calc(var(--shell-bottom-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.shell-dom-nav-placement-bottom.shell-diagnostics-enabled .shell-dom-nav,
body.shell-dom-nav-placement-bottom.has-shell-tools-open .shell-dom-nav {
  bottom: var(--shell-bottom-height);
  top: auto;
}

body.shell-dom-nav-placement-bottom.shell-diagnostics-enabled.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-diagnostics-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

body.shell-simple-rpg.shell-dom-nav-placement-bottom.has-dom-nav .shell-workspace {
  padding-block:
    var(--shell-top-height)
    calc(var(--shell-bottom-height) + var(--shell-dom-nav-offset) + var(--shell-dom-nav-height));
}

body.shell-simple-rpg.shell-dom-nav-placement-bottom.has-dom-nav .shell-layer-host {
  height: calc(100dvh - var(--shell-top-height) - var(--shell-dom-nav-offset) - var(--shell-dom-nav-height) - var(--shell-bottom-height));
}

/* V6 Offering / Vendor read-only containment. */
.vendor-participation-workbench,
.vendor-participation-panels,
[data-offering-inspector-module] { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.vendor-participation-panels { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: 0.8rem; }
@media (max-width: 640px) {
  .offering-market-surface .shell-card-browser-control-grid,
  .vendor-participation-panels { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 480px) {
  .radio-toolbar {
    grid-template-columns: minmax(0, 1fr);
    margin-inline: 0;
    width: 100%;
  }
}
.chamber-surface{display:grid;gap:1rem;max-width:1180px;margin:0 auto}.chamber-hero{display:flex;justify-content:space-between;gap:1rem;align-items:end;padding:clamp(1rem,3vw,2rem);border:1px solid var(--line,#3f5264);border-radius:1rem;background:linear-gradient(135deg,rgba(35,67,78,.92),rgba(23,31,45,.96))}.chamber-hero h1{margin:.15rem 0;font-size:clamp(2rem,6vw,4rem)}.chamber-hero__actions,.chamber-signal-grid article,.chamber-readonly{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.chamber-focus-grid,.chamber-spread-pair,.chamber-signal-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(15rem,.65fr);gap:1rem}.chamber-section,.chamber-context,.chamber-empty,.chamber-readonly{padding:1rem;border:1px solid var(--line,#3f5264);border-radius:1rem;background:rgba(13,22,32,.82);min-width:0}.chamber-section>header{margin-bottom:.75rem}.chamber-signal-grid article{justify-content:space-between;padding:.9rem;border-radius:.75rem;background:rgba(255,255,255,.05)}.chamber-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.chamber-metrics article{display:grid;padding:.85rem;border-radius:.75rem;background:rgba(255,255,255,.05)}.chamber-metrics strong{font-size:1.65rem}.chamber-readonly{justify-content:space-between}.chamber-surface .nysa-card-spread{max-width:100%;min-width:0}@media(max-width:700px){.chamber-hero{align-items:start;flex-direction:column}.chamber-focus-grid,.chamber-spread-pair,.chamber-signal-grid{grid-template-columns:minmax(0,1fr)}.chamber-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.chamber-surface{max-width:100%;overflow:hidden}.chamber-section{padding:.75rem}}
.pilot-walk-panel{display:grid;gap:.8rem;margin-bottom:1rem;border-color:#b9943f;background:linear-gradient(135deg,rgba(74,55,20,.88),rgba(19,30,38,.94))}.pilot-walk-panel>header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.pilot-walk-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.pilot-walk-progress span{padding:.6rem;border-radius:.6rem;background:rgba(255,255,255,.07)}@media(max-width:600px){.pilot-walk-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.pilot-walk-panel .page-actions>*{width:100%}}

/* Keep every shell-player action at a touch-sized target after legacy link rules. */
body .shell-media-player .shell-media-player__controls > :is(button, a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 3.1rem;
  padding-block: 0.55rem;
}

/* The minimized dock is one tight row while Expand remains touch-sized. */
body .shell-media-player[data-player-minimized="true"] {
  gap: 0;
  padding: 0.08rem 0.28rem;
}

body .shell-media-player[data-player-minimized="true"] .shell-media-player__summary {
  gap: 0.38rem;
  grid-template-columns: 2rem minmax(0, 1fr) auto;
}

body .shell-media-player[data-player-minimized="true"] .shell-media-player__art {
  border-radius: 0.35rem;
  width: 2rem;
}

body .shell-media-player[data-player-minimized="true"] .shell-media-player__copy {
  gap: 0;
}

body .shell-media-player[data-player-minimized="true"] .shell-media-player__copy :is(small, span) {
  display: none;
}

body .shell-media-player[data-player-minimized="true"] .shell-media-player__copy strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body .shell-media-player[data-player-minimized="true"] [data-shell-media-minimize] {
  min-block-size: 2.75rem;
  padding: 0.2rem 0.62rem;
}

/* Media Cards launch the one shell-owned Realm Radio player from their art. */
body .nysa-card .nysa-card__media-play {
  align-items: center;
  aspect-ratio: 1;
  background:
    radial-gradient(circle at 34% 24%, rgba(255, 255, 255, 0.32), transparent 28%),
    rgba(5, 9, 16, 0.88);
  border: 2px solid rgba(255, 255, 255, 0.94);
  border-radius: 50%;
  box-shadow:
    0 0 0 3px rgba(var(--card-accent-rgb), 0.42),
    0 0.45rem 1.2rem rgba(0, 0, 0, 0.62);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  height: clamp(2.75rem, 23%, 3.6rem);
  justify-content: center;
  left: 50%;
  min-height: 2.75rem;
  min-width: 2.75rem;
  padding: 0;
  position: absolute;
  top: 35%;
  transform: translate(-50%, -50%);
  transition: background 150ms ease, box-shadow 150ms ease, transform 150ms ease;
  width: clamp(2.75rem, 23%, 3.6rem);
  z-index: 6;
}

body .nysa-card .nysa-card__media-play-icon {
  border-bottom: 0.58rem solid transparent;
  border-left: 0.88rem solid currentColor;
  border-top: 0.58rem solid transparent;
  display: block;
  height: 0;
  margin-left: 0.16rem;
  width: 0;
}

body .nysa-card .nysa-card__media-play:hover,
body .nysa-card .nysa-card__media-play:focus-visible {
  background: color-mix(in srgb, var(--card-accent) 42%, #050910);
  box-shadow:
    0 0 0 4px rgba(var(--card-accent-rgb), 0.58),
    0 0 1.4rem var(--card-glow);
  outline: 2px solid #fff;
  outline-offset: 3px;
  transform: translate(-50%, -50%) scale(1.08);
}

body .nysa-card .nysa-card__media-play:disabled {
  cursor: wait;
  opacity: 0.68;
}

body .nysa-card.is-card-flipped .nysa-card__media-play {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  body .nysa-card .nysa-card__media-play {
    transition: none;
  }
}

/* Field Manual: stable operating knowledge in the Laboratory's editorial language. */
.route-manual-help {
  position: sticky;
  top: calc(var(--shell-top-offset, 4rem) + .5rem);
  z-index: 4;
  float: right;
  margin: .5rem .5rem 0 1rem;
  padding: .45rem .75rem;
  border: 1px solid color-mix(in srgb, var(--gold, #caa96a) 55%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--surface, #171714) 94%, transparent);
  color: var(--text, #f4ecd8);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
}

.manual-surface { display: grid; gap: 1.25rem; }
.manual-hero {
  overflow: hidden;
  position: relative;
  padding: clamp(1.5rem, 4vw, 3.5rem);
  background:
    linear-gradient(135deg, color-mix(in srgb, #1f2e28 88%, transparent), color-mix(in srgb, #11130f 94%, transparent)),
    radial-gradient(circle at 85% 15%, rgba(207, 171, 98, .18), transparent 35%);
}
.manual-hero::after { content: ""; position: absolute; inset: 1rem; border: 1px solid rgba(211, 181, 119, .14); pointer-events: none; }
.manual-hero > * { position: relative; z-index: 1; max-width: 72rem; }
.manual-role-starts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; margin-top: 1.4rem; }
.manual-role-starts a { display: grid; gap: .25rem; padding: 1rem; border: 1px solid rgba(211,181,119,.25); border-radius: .7rem; background: rgba(10,14,11,.4); color: inherit; text-decoration: none; }
.manual-role-starts a:hover, .manual-role-starts a:focus-visible { border-color: var(--gold, #caa96a); transform: translateY(-1px); }
.manual-role-starts span { color: var(--muted, #bcb6a7); font-size: .88rem; }

.manual-search-panel form { display: grid; grid-template-columns: minmax(15rem, 2fr) repeat(3, minmax(8rem, 1fr)) auto; align-items: end; gap: .75rem; }
.manual-search-panel form:has(select[name="status"]) { grid-template-columns: minmax(15rem, 2fr) repeat(4, minmax(7rem, 1fr)) auto; }
.manual-search-panel label { display: grid; gap: .35rem; min-width: 0; }
.manual-search-panel label > span { color: var(--muted, #bcb6a7); font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.manual-search-panel input, .manual-search-panel select { width: 100%; min-height: 2.75rem; }
.manual-results-announcement { margin: .75rem 0 0; color: var(--muted, #bcb6a7); }

.manual-entry-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: .9rem; }
.manual-entry-card { min-height: 12rem; }
.manual-entry-card > small { display: block; line-height: 1.5; }
.manual-entry-badges { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: auto; }
.manual-entry-badges span, .manual-entry-badges em { padding: .25rem .5rem; border: 1px solid rgba(211,181,119,.2); border-radius: 999px; color: var(--muted, #bcb6a7); font-size: .68rem; font-style: normal; letter-spacing: .05em; text-transform: uppercase; }
.manual-entry-badges .is-experimental, .manual-entry-badges .is-deprecated { border-color: #d19b57; color: #f0c27b; }

.manual-breadcrumbs { display: flex; flex-wrap: wrap; gap: .5rem; color: var(--muted, #bcb6a7); font-size: .84rem; }
.manual-article { display: grid; gap: 1rem; }
.manual-article__header { padding: clamp(1.25rem, 3vw, 2.5rem); }
.manual-article__header h1 { max-width: 22ch; }
.manual-article__meta { display: flex; flex-wrap: wrap; gap: .7rem 1.25rem; margin: 1rem 0 0; }
.manual-article__meta div { display: grid; gap: .12rem; }
.manual-article__meta dt { color: var(--muted, #bcb6a7); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.manual-article__meta dd { margin: 0; }
.manual-article__layout { display: grid; grid-template-columns: minmax(12rem, 17rem) minmax(0, 1fr); gap: 1rem; align-items: start; }
.manual-toc { position: sticky; top: calc(var(--shell-top-offset, 4rem) + .75rem); max-height: calc(100vh - 7rem); overflow: auto; }
.manual-toc ol { display: grid; gap: .45rem; padding-left: 1.2rem; }
.manual-toc a { color: inherit; text-underline-offset: .2em; }
.manual-prose { min-width: 0; font-size: clamp(1rem, 1.4vw, 1.08rem); line-height: 1.72; }
.manual-prose > :first-child { margin-top: 0; }
.manual-prose h1, .manual-prose h2, .manual-prose h3 { scroll-margin-top: 7rem; line-height: 1.2; }
.manual-prose h2 { margin-top: 2.2rem; padding-top: .5rem; border-top: 1px solid rgba(211,181,119,.16); }
.manual-prose li + li { margin-top: .4rem; }
.manual-prose blockquote { margin: 1.2rem 0; padding: .1rem 1rem; border-left: .22rem solid var(--gold, #caa96a); color: var(--muted, #bcb6a7); }
.manual-callout { margin: 1.25rem 0; padding: 1rem 1.1rem; border: 1px solid rgba(211,181,119,.28); border-left-width: .3rem; border-radius: .45rem; background: rgba(211,181,119,.06); }
.manual-callout p { margin: .35rem 0 0; }
.manual-callout--warning { border-color: #d19b57; background: rgba(209,155,87,.08); }
.manual-callout--tip { border-color: #72af91; background: rgba(81,151,116,.08); }
.manual-table-wrap { max-width: 100%; overflow-x: auto; margin: 1.2rem 0; }
.manual-table-wrap table { width: 100%; min-width: 32rem; border-collapse: collapse; }
.manual-table-wrap th, .manual-table-wrap td { padding: .7rem; border: 1px solid rgba(211,181,119,.18); text-align: left; vertical-align: top; }
.manual-code { max-width: 100%; overflow-x: auto; padding: 1rem; border-radius: .45rem; background: #0b0d0b; }
.manual-inline-card { display: inline; padding: 0; border: 0; background: none; color: var(--link, #d8bc80); font: inherit; text-decoration: underline; cursor: pointer; }
.manual-reference-unavailable { color: var(--muted, #bcb6a7); text-decoration: line-through; }
.manual-experimental-warning { margin-top: 1rem; padding: .8rem 1rem; border: 1px solid #d19b57; border-radius: .5rem; }

.manual-definitions dl, .manual-glossary dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: .7rem; }
.manual-definitions dl > div, .manual-glossary dl > div { padding: .8rem; border: 1px solid rgba(211,181,119,.16); border-radius: .45rem; scroll-margin-top: 7rem; }
.manual-definitions dt, .manual-glossary dt { font-weight: 700; }
.manual-definitions dd, .manual-glossary dd { margin: .35rem 0 0; color: var(--muted, #bcb6a7); line-height: 1.5; }
.manual-glossary > header { display: flex; justify-content: space-between; gap: 1rem; align-items: end; }
.manual-glossary small { display: block; margin-top: .35rem; }
.manual-related__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: .65rem; }
.manual-related__grid a { display: grid; gap: .2rem; padding: .8rem; border: 1px solid rgba(211,181,119,.2); border-radius: .45rem; color: inherit; text-decoration: none; }
.manual-related__grid span { color: var(--muted, #bcb6a7); font-size: .68rem; text-transform: uppercase; }
.manual-article-pager { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.manual-article-pager a { display: grid; gap: .2rem; padding: 1rem; border: 1px solid rgba(211,181,119,.2); border-radius: .5rem; color: inherit; text-decoration: none; }
.manual-article-pager a:last-child { text-align: right; }
.manual-article-pager span { color: var(--muted, #bcb6a7); font-size: .7rem; text-transform: uppercase; }

@media (max-width: 920px) {
  .manual-search-panel form, .manual-search-panel form:has(select[name="status"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .manual-search-field { grid-column: 1 / -1; }
  .manual-article__layout { grid-template-columns: 1fr; }
  .manual-toc { position: static; max-height: none; }
}

@media (max-width: 560px) {
  .route-manual-help { position: static; float: none; display: inline-flex; margin: .5rem 0; }
  .manual-role-starts, .manual-search-panel form, .manual-search-panel form:has(select[name="status"]), .manual-article-pager { grid-template-columns: 1fr; }
  .manual-search-field { grid-column: auto; }
  .manual-glossary > header { display: block; }
  .manual-prose { padding-inline: 1rem; overflow-wrap: anywhere; }
  .manual-table-wrap { margin-inline: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .manual-role-starts a { transition: none; }
  .manual-role-starts a:hover, .manual-role-starts a:focus-visible { transform: none; }
}

/* Shared interaction and responsive-data contract. */
[data-route-host] :is(
  button,
  .button,
  input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
  select,
  textarea,
  summary,
  [role="button"],
  [role="tab"]
) {
  min-block-size: 24px;
}

[data-route-host] :is(input[type="checkbox"], input[type="radio"]) {
  min-block-size: 24px;
  min-inline-size: 24px;
}

/* Navigation and tabular actions are discrete controls, not inline-text exceptions. */
[data-route-host] :is(nav a, table a) {
  align-items: center;
  display: inline-flex;
  min-block-size: 24px;
}

[data-route-host] :is(.card-qr-share-button, .card-qr-share-button--footer, .shell-card-browser-row-qr) {
  min-inline-size: 28px;
}

.responsive-table-controls {
  display: none;
}

@media (max-width: 760px), (pointer: coarse) {
  [data-route-host] :is(
    button,
    .button,
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
    select,
    textarea,
    summary,
    [role="button"],
    [role="tab"]
  ) {
    min-block-size: 44px;
  }

  [data-route-host] :is(
    nav a,
    .page-actions > a,
    .journal-tabs a,
    .membership-admin-tabs a,
    .manual-glossary dt a,
    .radio-track__actions a,
    [data-wallet-page] .surface-panel p > a:only-child,
    .operator-center table[data-responsive-table="stack"] td > a:only-child,
    table[data-responsive-table="stack"] td > a:only-child,
    .treasury-owner-card > a,
    .card-qr-share-button,
    .card-qr-share-button--footer,
    .shell-card-browser-row-qr
  ) {
    align-items: center;
    display: inline-flex;
    min-block-size: 44px;
  }

  [data-route-host] :is(
    .manual-glossary dt a,
    .radio-track__actions a,
    [data-wallet-page] .surface-panel p > a:only-child,
    .operator-center table[data-responsive-table="stack"] td > a:only-child,
    table[data-responsive-table="stack"] td > a:only-child,
    .treasury-owner-card > a
  ) {
    padding-block: 0.55rem;
  }

  [data-route-host] :is(
    .card-qr-share-button,
    .card-qr-share-button--footer,
    .shell-card-browser-row-qr,
    .card-flip-edge
  ) {
    min-inline-size: 44px;
  }

  [data-route-host] label:has(input[type="checkbox"], input[type="radio"]) {
    align-items: center;
    min-block-size: 44px;
  }

  [data-route-host] :is(.table-responsive, .table-wrap):has(> table[data-responsive-table="stack"]),
  [data-route-host] :is(.lab-endpoint-table-wrap, .lab-service-table-wrap, .lab-client-table-wrap, .lab-gate-table-wrap):has(> table[data-responsive-table="stack"]) {
    overflow: visible;
  }

  [data-route-host] table[data-responsive-table="stack"] {
    border: 0;
    display: block;
    min-inline-size: 0;
    table-layout: auto;
    width: 100%;
  }

  [data-route-host] table[data-responsive-table="stack"] > thead {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  [data-route-host] table[data-responsive-table="stack"][data-responsive-limited="true"]:not([data-responsive-filter-active="true"]) tr[data-responsive-overflow] {
    display: none;
  }

  [data-route-host] table[data-responsive-table="stack"][data-responsive-filter-active="true"] + .responsive-table-controls {
    display: none;
  }

  [data-route-host] .responsive-table-controls {
    align-items: center;
    background: var(--surface-soft);
    border: 1px solid var(--line-soft);
    border-radius: var(--radius-sm);
    display: grid;
    gap: 0.65rem;
    margin-top: 0.75rem;
    padding: 0.75rem;
  }

  [data-route-host] .responsive-table-controls > div {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot),
  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr {
    display: grid;
    min-inline-size: 0;
    width: 100%;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr {
    background: color-mix(in srgb, var(--surface, #171714) 92%, transparent);
    border: 1px solid var(--line-soft);
    border-radius: 0.7rem;
    gap: 0;
    margin-block: 0 0.75rem;
    overflow: hidden;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr > :is(th, td) {
    align-items: start;
    border: 0;
    border-block-start: 1px solid var(--line-soft);
    display: grid;
    gap: 0.65rem;
    grid-template-columns: minmax(7rem, 36%) minmax(0, 1fr);
    min-inline-size: 0;
    padding: 0.7rem 0.8rem;
    text-align: start;
    width: 100%;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr > :is(th, td):first-child {
    border-block-start: 0;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr > :is(th, td)::before {
    color: var(--muted);
    content: attr(data-label);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    overflow-wrap: anywhere;
    text-transform: uppercase;
  }

  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr > [colspan] {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 440px) {
  [data-route-host] table[data-responsive-table="stack"] > :is(tbody, tfoot) > tr > :is(th, td) {
    grid-template-columns: minmax(0, 1fr);
  }
}
