/*
 * Braden's Values — final sitewide visual system
 * Loaded last on purpose: this file resolves legacy page-level conflicts while
 * leaving the reference-matched Home dashboard untouched.
 */

:root {
  --sw-bg: #050812;
  --sw-panel: #090e18;
  --sw-panel-raised: #0d1421;
  --sw-panel-soft: #111927;
  --sw-text: #f7f5fb;
  --sw-copy: #a9adba;
  --sw-faint: #73798a;
  --sw-line: rgba(224, 218, 255, 0.09);
  --sw-line-strong: rgba(190, 176, 255, 0.2);
  --sw-violet: #8d57f6;
  --sw-violet-bright: #b18aff;
  --sw-violet-soft: rgba(141, 87, 246, 0.12);
  --sw-green: #4ee38a;
  --sw-gold: #f3c657;
  --sw-red: #ff737e;
  --sw-radius: 14px;
  --sw-shadow: 0 18px 55px rgba(0, 0, 0, 0.25), inset 0 1px rgba(255, 255, 255, 0.022);
}

body[data-theme="light"] {
  --sw-bg: #f5f5f9;
  --sw-panel: #ffffff;
  --sw-panel-raised: #f6f6fa;
  --sw-panel-soft: #eeeef5;
  --sw-text: #191a22;
  --sw-copy: #636878;
  --sw-faint: #8e93a1;
  --sw-line: rgba(30, 32, 46, 0.1);
  --sw-line-strong: rgba(93, 70, 170, 0.2);
  --sw-violet-soft: rgba(119, 76, 224, 0.09);
  --sw-shadow: 0 18px 48px rgba(39, 32, 67, 0.08), inset 0 1px rgba(255, 255, 255, 0.75);
}

/* Shared page hierarchy */
.app > .page:not(#page-home) {
  width: 100%;
  max-width: 1380px !important;
  color: var(--sw-text) !important;
}

.app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) {
  position: relative;
  min-height: 112px !important;
  margin: 0 0 18px !important;
  padding: 8px 0 20px !important;
  align-items: flex-end !important;
  border-bottom: 1px solid var(--sw-line) !important;
}

.app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head)::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 82px;
  height: 1px;
  background: linear-gradient(90deg, var(--sw-violet-bright), transparent);
}

.app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h1,
.app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h2 {
  margin: 7px 0 6px !important;
  color: var(--sw-text) !important;
  font-size: clamp(38px, 3.5vw, 52px) !important;
  font-weight: 820 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
}

.app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) p {
  max-width: 750px;
  margin: 0 !important;
  color: var(--sw-copy) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.app > .page:not(#page-home) .eyebrow,
.modal .eyebrow,
.app > .page:not(#page-home) :is(.feature-kicker, .panel-kicker) {
  color: var(--sw-violet-bright) !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase;
}

.bv2-head-signal {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 39px;
  padding: 0 13px;
  border: 1px solid rgba(78, 227, 138, 0.16);
  border-radius: 10px;
  background: rgba(78, 227, 138, 0.045);
  color: #c8d2cc;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
}

.bv2-head-signal i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--sw-green);
  box-shadow: 0 0 13px rgba(78, 227, 138, 0.66);
}

/* Shared surfaces and controls */
.app > .page:not(#page-home) :is(
  .card,
  .tool-card,
  .trade-main,
  .trade-side,
  .verdict-card,
  .engine-panel,
  .feedback-form,
  .feedback-status-card,
  .history-card,
  .shop-card,
  .goal-card
) {
  border: 1px solid var(--sw-line) !important;
  border-radius: var(--sw-radius) !important;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--sw-panel-raised) 74%, transparent), transparent 56%),
    var(--sw-panel) !important;
  box-shadow: var(--sw-shadow) !important;
}

.app > .page:not(#page-home) :is(.card, .tool-card, .trade-main, .trade-side, .verdict-card)::before {
  display: none !important;
}

.app > .page:not(#page-home) :is(.btn, .field, .big-input, select, input[type="text"], input[type="number"], input[type="email"], input[type="password"], textarea),
.modal :is(.btn, .field, .big-input, select, input[type="text"], input[type="number"], input[type="email"], input[type="password"], textarea) {
  border: 1px solid var(--sw-line) !important;
  border-radius: 10px !important;
  background: var(--sw-panel-raised) !important;
  color: var(--sw-text) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.018) !important;
}

.app > .page:not(#page-home) :is(.field, .big-input, select, input[type="text"], input[type="number"], input[type="email"], input[type="password"]),
.modal :is(.field, .big-input, select, input[type="text"], input[type="number"], input[type="email"], input[type="password"]) {
  min-height: 44px !important;
  font-size: 12px !important;
}

.app > .page:not(#page-home) :is(.btn, button.btn),
.modal :is(.btn, button.btn) {
  min-height: 40px;
  padding: 8px 13px;
  color: #e9e7ef !important;
  font-size: 11px !important;
  font-weight: 740 !important;
}

.app > .page:not(#page-home) .btn.small-btn,
.modal .btn.small-btn {
  min-height: 36px;
  padding: 7px 11px;
}

.app > .page:not(#page-home) .btn:hover,
.modal .btn:hover {
  border-color: var(--sw-line-strong) !important;
  background: var(--sw-panel-soft) !important;
  transform: translateY(-1px) !important;
}

.app > .page:not(#page-home) .btn.primary,
.modal .btn.primary {
  border-color: rgba(178, 139, 255, 0.56) !important;
  background: linear-gradient(135deg, #7440e8, #9b62fb) !important;
  color: #fff !important;
  box-shadow: 0 10px 26px rgba(94, 49, 193, 0.24), inset 0 1px rgba(255, 255, 255, 0.18) !important;
}

.app > .page:not(#page-home) .btn.primary:hover,
.modal .btn.primary:hover {
  background: linear-gradient(135deg, #8050ec, #aa79ff) !important;
}

.app > .page:not(#page-home) .btn.danger,
.modal .btn.danger {
  border-color: rgba(255, 115, 126, 0.18) !important;
  background: rgba(255, 115, 126, 0.055) !important;
  color: #ff9ba3 !important;
}

.app > .page:not(#page-home) :is(.input-label, .field-label, .setting-control),
.modal :is(.input-label, .field-label, .setting-control) {
  color: var(--sw-copy) !important;
  font-size: 11px !important;
  line-height: 1.4;
}

.app > .page:not(#page-home) :is(.small, small),
.modal :is(.small, small) {
  font-size: max(10px, 0.68rem);
}

.app > .page:not(#page-home) :is(.muted, .small.muted),
.modal :is(.muted, .small.muted) {
  color: var(--sw-copy) !important;
}

.app > .page:not(#page-home) .empty-state {
  min-height: 138px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 15px;
  padding: 28px 20px !important;
  border: 1px dashed rgba(178, 139, 255, 0.17);
  border-radius: 12px;
  background:
    radial-gradient(circle at 50% 15%, rgba(141, 87, 246, 0.08), transparent 48%),
    rgba(255, 255, 255, 0.012);
  color: var(--sw-copy) !important;
  font-size: 12px !important;
  line-height: 1.5;
  text-align: center;
}

.app > .page:not(#page-home) .empty-state::before {
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid rgba(178, 139, 255, 0.46);
  border-radius: 6px;
  background: rgba(141, 87, 246, 0.08);
  box-shadow: 0 0 0 7px rgba(141, 87, 246, 0.03);
  transform: rotate(45deg);
}

/* Trade calculator */
#page-trade {
  margin-top: 0 !important;
}

#page-trade .trade-shell {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 356px) !important;
  gap: 16px !important;
}

#page-trade .trade-main {
  padding: 17px !important;
}

#page-trade .trade-head {
  min-height: 52px;
  padding-bottom: 13px;
}

#page-trade .trade-head strong {
  color: var(--sw-text);
  font-size: 15px !important;
  letter-spacing: -0.015em;
}

#page-trade .trade-head .small {
  margin-top: 4px;
  font-size: 11px !important;
}

#page-trade .trade-actions,
#page-trade .engine-toolbar-actions {
  gap: 7px;
}

#page-trade .engine-toolbar {
  grid-template-columns: minmax(245px, 1fr) auto;
  gap: 12px;
  min-height: 62px;
  padding: 9px 0 !important;
}

#page-trade .inventory-mode-btn {
  min-height: 46px;
  padding: 7px 10px;
  border-color: var(--sw-line) !important;
  background: var(--sw-panel-raised) !important;
}

#page-trade .inventory-mode-btn b {
  font-size: 11px !important;
}

#page-trade .inventory-mode-btn small,
#page-trade .inventory-mode-btn i {
  font-size: 9px !important;
}

#page-trade .engine-signal-strip {
  gap: 8px !important;
  margin: 12px 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
}

#page-trade .engine-signal-strip > div {
  min-height: 76px;
  padding: 11px 12px !important;
  border: 1px solid var(--sw-line) !important;
  border-radius: 10px !important;
  background: var(--sw-panel-raised) !important;
}

#page-trade .engine-signal-strip span,
#page-trade .mini-stat span {
  color: var(--sw-faint) !important;
  font-size: 9px !important;
}

#page-trade .engine-signal-strip strong {
  margin-top: 5px;
  font-size: 16px !important;
}

#page-trade .engine-signal-strip small {
  margin-top: 3px;
  color: var(--sw-copy);
  font-size: 9px !important;
}

#page-trade .trade-columns {
  gap: 11px !important;
}

#page-trade .trade-side {
  padding: 12px !important;
  background: linear-gradient(180deg, rgba(17, 24, 39, 0.72), var(--sw-panel)) !important;
}

#page-trade .side-title h3 {
  font-size: 16px;
}

#page-trade .slot-grid {
  gap: 7px !important;
}

#page-trade .slot {
  min-height: 116px;
  border-color: var(--sw-line) !important;
  border-radius: 11px !important;
  background: #070b13 !important;
}

#page-trade .slot.filled {
  display: block;
  color: inherit;
}

#page-trade .slot-open {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  text-align: left;
}

#page-trade .slot-open:focus-visible {
  outline: 2px solid var(--sw-violet-bright);
  outline-offset: -3px;
}

#page-trade .slot.empty {
  background: rgba(255, 255, 255, 0.012) !important;
}

#page-trade .slot img {
  height: 70px;
  object-fit: contain;
}

#page-trade .slot-copy strong {
  font-size: 10px !important;
}

#page-trade .slot-copy span {
  font-size: 9px !important;
}

#page-trade .side-totals {
  gap: 7px;
  margin-top: 9px;
}

#page-trade .side-totals .mini-stat {
  min-height: 57px;
  padding: 9px !important;
  border-color: var(--sw-line) !important;
  background: var(--sw-panel-raised) !important;
}

#page-trade .verdict-card {
  position: sticky;
  top: calc(var(--top) + 18px);
  overflow: hidden;
}

#page-trade .verdict-top {
  padding: 24px 19px 18px;
  background:
    radial-gradient(circle at 50% 0%, rgba(141, 87, 246, 0.13), transparent 58%),
    transparent;
}

#page-trade .verdict-top h2 {
  margin-top: 12px;
  font-size: 27px;
  letter-spacing: -0.045em;
}

#page-trade .verdict-top p {
  font-size: 11px;
  line-height: 1.5;
}

#page-trade .verdict-body {
  padding: 15px !important;
}

/* Offer builder */
#page-target .planner-banner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 128px;
  gap: 20px;
  align-items: center;
  min-height: 126px;
  margin: 0 0 14px;
  padding: 19px 21px;
  overflow: hidden;
  background:
    radial-gradient(360px 190px at 86% 40%, rgba(141, 87, 246, 0.18), transparent 72%),
    linear-gradient(120deg, #101425, var(--sw-panel)) !important;
}

#page-target .planner-banner h3 {
  margin: 5px 0 4px;
  font-size: 23px;
  letter-spacing: -0.035em;
}

#page-target .planner-banner p {
  max-width: 780px;
  margin: 0;
  color: var(--sw-copy);
  font-size: 11px;
  line-height: 1.5;
}

#page-target .planner-banner-score {
  border-color: var(--sw-line-strong);
  background: rgba(7, 10, 18, 0.58);
}

#page-target .planner-tabs,
#page-goals .planner-tabs {
  margin-bottom: 14px;
}

#page-target .planner-layout {
  grid-template-columns: minmax(320px, 355px) minmax(0, 1fr) !important;
  gap: 14px !important;
}

#page-target .planner-controls,
#page-target .target-output-card {
  padding: 18px !important;
}

#page-target .planner-controls > h3,
#page-target .target-output-head h3 {
  font-size: 19px !important;
}

#page-target .input-label {
  margin: 14px 0 7px;
  font-size: 10px !important;
}

#page-target .compact-toggle {
  min-height: 56px;
  padding: 10px;
  border-color: var(--sw-line);
  background: var(--sw-panel-raised);
}

#page-target .compact-toggle b {
  font-size: 11px !important;
}

#page-target .compact-toggle small,
#page-target .target-output-head p {
  font-size: 10px !important;
}

#page-target .target-output-card {
  min-height: 500px;
}

#page-target .target-results > .empty-state {
  min-height: 390px;
}

#page-target .offer-card-v5 {
  padding: 15px;
  border-color: var(--sw-line);
  border-radius: 12px;
  background: var(--sw-panel-raised);
}

#page-target .offer-items {
  gap: 8px;
}

#page-target .offer-item img {
  height: 88px;
}

#page-target .offer-metrics {
  gap: 6px;
  overflow: visible;
  border: 0;
}

#page-target .offer-metrics .mini-stat {
  border: 1px solid var(--sw-line) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.018) !important;
}

/* Compare */
#page-compare > .tool-card {
  padding: 18px !important;
}

#page-compare .compare-drop {
  position: relative;
  gap: 12px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--sw-line);
}

#page-compare .compare-drop::after {
  content: "VS";
  position: absolute;
  left: 50%;
  top: 22px;
  z-index: 2;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  border: 1px solid var(--sw-line-strong);
  border-radius: 9px;
  background: var(--sw-panel);
  color: var(--sw-violet-bright);
  font-size: 9px;
  font-weight: 900;
}

#page-compare #compareContent > .grid {
  gap: 12px !important;
  margin-top: 16px !important;
}

#page-compare #compareContent .card-pad {
  padding: 15px !important;
  border-color: var(--sw-line) !important;
  background: var(--sw-panel-raised) !important;
}

#page-compare :is(#compareImageA, #compareImageB) {
  width: 126px !important;
  height: 96px !important;
  flex-basis: 126px !important;
  border-radius: 11px !important;
  background: radial-gradient(circle at 50% 50%, rgba(141, 87, 246, 0.12), transparent 68%) !important;
}

#page-compare :is(#compareImageA, #compareImageB) img {
  object-fit: contain !important;
}

#page-compare #compareContent h3 {
  margin-bottom: 9px !important;
  font-size: 19px;
  letter-spacing: -0.025em;
}

#page-compare .compare-bars {
  margin-top: 16px;
  padding: 15px 4px 4px;
}

#page-compare .bar-row {
  grid-template-columns: 120px minmax(0, 1fr) 84px;
  gap: 13px;
  margin: 14px 0;
}

#page-compare .bar-row > span,
#page-compare .bar-row > b {
  font-size: 11px !important;
}

#page-compare .bar-track {
  height: 9px;
  border-radius: 999px;
  background: #050812;
}

/* Market, goals, and analytics */
#page-heat .heat-stat-grid,
#page-insights .insight-stats,
#page-engine .engine-metric-grid,
#page-inventory .inventory-stats,
#page-goals .goal-summary {
  gap: 8px !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
}

#page-heat .heat-stat,
#page-insights .insight-stats > div,
#page-engine .engine-metric,
#page-inventory .inventory-stats > .card,
#page-goals .goal-summary > div {
  min-height: 90px;
  padding: 14px 15px !important;
  border: 1px solid var(--sw-line) !important;
  border-radius: 11px !important;
  background: var(--sw-panel) !important;
  box-shadow: var(--sw-shadow) !important;
}

#page-heat .heat-stat span,
#page-heat .heat-stat small,
#page-inventory .stat-label,
#page-engine .engine-metric > small,
#page-insights .insight-stats span,
#page-goals .goal-summary span {
  color: var(--sw-copy) !important;
  font-size: 10px !important;
}

#page-heat .heat-stat strong,
#page-inventory .stat-value,
#page-engine .engine-metric > strong {
  margin-top: 7px;
  font-size: 23px !important;
}

#page-heat .heat-note {
  gap: 12px;
  margin: 12px 0;
  padding: 13px 15px;
  border-color: rgba(78, 227, 138, 0.14);
  border-radius: 11px;
  background: rgba(78, 227, 138, 0.035);
}

#page-heat .heat-note strong {
  font-size: 12px;
}

#page-heat .heat-note p {
  font-size: 10px;
}

#page-heat .heat-tabs {
  gap: 7px;
  margin-bottom: 12px;
}

#page-heat .heat-tabs button {
  min-height: 38px;
  padding: 0 13px;
  border-color: var(--sw-line);
  border-radius: 9px;
  background: var(--sw-panel);
  color: var(--sw-copy);
  font-size: 11px;
}

#page-heat .heat-board {
  padding: 18px;
}

#page-heat .heat-board .panel-head h2 {
  font-size: 24px;
}

#page-heat .heat-row,
#page-insights .insight-row {
  border-color: var(--sw-line) !important;
  background: var(--sw-panel-raised) !important;
}

#page-insights .insight-layout {
  gap: 13px;
}

#page-insights .insight-panel {
  padding: 17px;
}

#page-insights .compact-head {
  min-height: 54px !important;
  margin-bottom: 12px !important;
  padding: 0 0 11px !important;
  border-bottom: 1px solid var(--sw-line);
}

#page-insights .insight-panel .section-head.compact-head h2 {
  font-size: 24px !important;
  letter-spacing: -0.035em !important;
}

#page-insights .insight-panel .section-head.compact-head p {
  font-size: 10px !important;
}

#page-insights .insight-list {
  gap: 7px;
}

#page-insights .insight-row {
  grid-template-columns: 62px minmax(0, 1fr) auto;
  gap: 11px;
  padding: 9px;
  border-radius: 10px !important;
  color: var(--sw-text);
  text-align: left;
}

#page-insights .insight-row img {
  width: 62px;
  height: 48px;
}

#page-insights .insight-row > div:nth-child(2) {
  min-width: 0;
  text-align: left;
}

#page-insights .insight-row strong {
  font-size: 11px;
}

#page-insights .insight-row span {
  margin-top: 3px;
  color: var(--sw-copy);
  font-size: 9px;
}

#page-insights .insight-score {
  color: var(--sw-violet-bright);
  font-size: 12px;
  text-align: right;
}

#page-goals .goal-add-card {
  gap: 12px;
  padding: 17px;
}

#page-goals .goal-add-card .input-label {
  font-size: 10px !important;
}

#page-goals .goal-grid {
  gap: 12px;
}

#page-goals .goal-card {
  transition: border-color 150ms ease, transform 150ms ease;
}

#page-goals .goal-card:hover {
  border-color: var(--sw-line-strong) !important;
  transform: translateY(-2px);
}

#page-goals .goal-image {
  height: 166px;
  background: radial-gradient(circle at 50% 50%, rgba(141, 87, 246, 0.11), #060912 72%);
}

#page-goals .goal-card-body {
  padding: 14px;
}

/* Trade analysis */
#page-engine .engine-hero {
  grid-template-columns: 174px minmax(0, 1fr) 190px !important;
  gap: 24px;
  min-height: 224px;
  padding: 24px;
  background:
    radial-gradient(420px 230px at 8% 50%, rgba(141, 87, 246, 0.14), transparent 72%),
    radial-gradient(360px 210px at 90% 20%, rgba(79, 119, 255, 0.08), transparent 72%),
    var(--sw-panel) !important;
}

#page-engine .engine-core-visual {
  display: grid !important;
  height: 174px;
  filter: none;
}

#page-engine .engine-ring {
  opacity: 0.74;
}

#page-engine .ring-a {
  width: 166px;
  height: 166px;
}

#page-engine .ring-b {
  width: 124px;
  height: 124px;
}

#page-engine .engine-core {
  width: 94px;
  height: 94px;
  border-radius: 26px;
  background: linear-gradient(145deg, #241b43, #0b0d17) !important;
  border-color: rgba(178, 139, 255, 0.35);
  box-shadow: 0 0 45px rgba(104, 66, 213, 0.2);
}

#page-engine .engine-hero-copy {
  grid-column: auto;
}

#page-engine .engine-hero-copy h3 {
  font-size: clamp(26px, 2.5vw, 34px);
}

#page-engine .engine-hero-copy p {
  font-size: 12px;
}

#page-engine .engine-tags span {
  padding: 6px 9px;
  border: 1px solid var(--sw-line);
  background: var(--sw-panel-raised);
  color: var(--sw-copy);
  font-size: 10px;
}

#page-engine .engine-score-card {
  border-color: var(--sw-line-strong);
  border-radius: 12px;
  background: rgba(5, 8, 18, 0.64);
}

#page-engine .engine-score-card strong {
  font-size: 46px;
}

#page-engine .engine-layout {
  gap: 13px;
  margin-top: 13px;
}

#page-engine .engine-panel {
  padding: 18px;
}

#page-engine .panel-head h3 {
  font-size: 21px;
}

#page-engine .panel-head p {
  font-size: 10px;
}

#page-engine .counter-card,
#page-engine .engine-quick-actions button {
  border-color: var(--sw-line);
  border-radius: 10px;
  background: var(--sw-panel-raised);
}

#page-engine .engine-quick-actions button {
  min-height: 64px;
  padding: 11px 12px;
}

/* Inventory */
#page-inventory .inventory-head {
  gap: 8px;
}

#page-inventory .scan-feature {
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 15px;
  min-height: 94px;
  padding: 16px 18px;
  background:
    radial-gradient(260px 120px at 4% 50%, rgba(141, 87, 246, 0.14), transparent 72%),
    var(--sw-panel) !important;
}

#page-inventory .scan-feature-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-color: var(--sw-line-strong);
  border-radius: 12px;
  background: var(--sw-violet-soft);
}

#page-inventory .scan-feature-icon img,
#page-feedback .note-icon img {
  width: 21px;
  height: 21px;
  filter: brightness(0) saturate(100%) invert(70%) sepia(40%) saturate(3562%) hue-rotate(216deg) brightness(102%) contrast(102%);
}

#page-inventory .scan-feature h3 {
  font-size: 17px;
}

#page-inventory .scan-feature p {
  font-size: 10px;
  line-height: 1.5;
}

#page-inventory .table-wrap {
  border-color: var(--sw-line);
  border-radius: 12px;
  background: var(--sw-panel);
  box-shadow: var(--sw-shadow);
}

#page-inventory th {
  padding: 11px 13px;
  background: var(--sw-panel-raised);
  color: var(--sw-copy);
  font-size: 9px;
}

#page-inventory td {
  padding: 11px 13px;
}

#page-inventory .table-wrap > .empty-state {
  margin: 12px;
}

/* Shop and leaderboard */
#page-shop .shop-hero,
#page-leaderboard .leaderboard-hero {
  min-height: 150px;
  padding: 20px 22px;
}

#page-shop .shop-hero {
  grid-template-columns: 64px minmax(0, 1fr) 230px;
  background:
    radial-gradient(320px 180px at 4% 30%, rgba(243, 198, 87, 0.11), transparent 68%),
    linear-gradient(100deg, rgba(141, 87, 246, 0.055), transparent 48%),
    var(--sw-panel) !important;
}

#page-shop .dino-coin-icon.large {
  width: 58px;
  height: 58px;
}

#page-shop .shop-hero-copy h2,
#page-leaderboard .leaderboard-hero-copy h2 {
  margin: 6px 0 5px;
  font-size: 27px;
  letter-spacing: -0.04em;
}

#page-shop .shop-hero-copy p,
#page-leaderboard .leaderboard-hero-copy p {
  color: var(--sw-copy);
  font-size: 11px;
  line-height: 1.52;
}

#page-shop .shop-balance-card,
#page-leaderboard .leaderboard-me {
  padding: 15px 16px;
  border: 1px solid rgba(243, 198, 87, 0.16);
  border-radius: 11px;
  background: rgba(243, 198, 87, 0.035);
}

#page-shop .shop-toolbar {
  margin-bottom: 19px;
  padding: 16px 18px;
}

#page-shop .shop-filter-control,
#page-shop .shop-toolbar-copy p {
  font-size: 11px;
}

#page-shop .shop-toolbar-copy strong {
  font-size: 16px;
}

#page-shop .shop-section-stack {
  gap: 23px;
}

#page-shop .shop-section-head {
  min-height: 62px !important;
  margin-bottom: 10px !important;
  padding: 0 !important;
  border: 0 !important;
}

#page-shop .shop-section-head::before {
  display: none !important;
}

#page-shop .shop-section-block .section-head.shop-section-head h2 {
  font-size: 27px !important;
}

#page-shop .shop-section-block .section-head.shop-section-head p {
  font-size: 10px !important;
}

#page-shop .shop-grid {
  gap: 12px;
}

#page-shop .shop-card {
  padding: 15px;
  gap: 10px;
  transition: transform 160ms ease, border-color 160ms ease;
}

#page-shop .shop-card:hover {
  border-color: var(--sw-line-strong) !important;
  transform: translateY(-2px);
}

#page-shop .shop-preview.pfp-preview {
  height: 196px;
  background: radial-gradient(circle at 50% 45%, rgba(141, 87, 246, 0.17), #050812 72%);
}

#page-shop .shop-pfp-preview img {
  object-fit: contain;
  background: transparent;
}

#page-shop #shopPfpGrid img.shop-pfp-preview {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 10px !important;
  background: #050812 !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.3) !important;
}

#page-shop .shop-card.is-equipped {
  border-color: rgba(78, 227, 138, 0.32) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28), inset 0 0 0 1px rgba(78, 227, 138, 0.05) !important;
}

#page-shop .shop-equipped {
  position: absolute;
  z-index: 3;
  top: 12px;
  right: 12px;
  padding: 5px 8px;
  border: 1px solid rgba(78, 227, 138, 0.24);
  border-radius: 7px;
  background: rgba(4, 24, 15, 0.9);
  color: var(--sw-green);
  font-size: 9px;
  font-weight: 850;
}

#page-shop .shop-card h3 {
  font-size: 16px;
}

#page-shop .shop-card p {
  font-size: 10px;
  line-height: 1.5;
}

#page-leaderboard .leaderboard-hero {
  grid-template-columns: minmax(0, 1fr) 260px;
  background:
    radial-gradient(300px 170px at 4% 25%, rgba(243, 198, 87, 0.1), transparent 70%),
    var(--sw-panel) !important;
}

#page-leaderboard .leaderboard-podium {
  gap: 12px;
}

#page-leaderboard .leaderboard-podium-card {
  min-height: 154px;
  padding: 16px;
  border-color: var(--sw-line);
  border-radius: 12px;
  background: var(--sw-panel);
  box-shadow: var(--sw-shadow);
}

#page-leaderboard .leaderboard-podium-card h3 {
  font-size: 16px;
}

#page-leaderboard .leaderboard-podium-score {
  font-size: 21px;
}

#page-leaderboard .leaderboard-note {
  color: var(--sw-copy);
  font-size: 10px;
  line-height: 1.5;
}

/* Casino: preserve the game-specific identity while matching the shell */
#page-casino .casino-page-head {
  margin-bottom: 14px !important;
}

#page-casino .casino-head-balance {
  border-color: rgba(243, 198, 87, 0.18);
  background: rgba(243, 198, 87, 0.035);
  box-shadow: none;
}

#page-casino .casino-mode-tabs {
  margin-bottom: 15px;
}

#page-casino .casino-game-card,
#page-casino .casino-rules-card,
#page-casino .casino-history-card,
#page-casino .plinko-pro-controls {
  border-color: var(--sw-line) !important;
  box-shadow: var(--sw-shadow) !important;
}

#page-casino :is(.casino-game-heading p, .casino-rules-copy, .casino-disclaimer, .casino-result small) {
  font-size: 10px !important;
  line-height: 1.5;
}

/* Saved trades and feedback */
#page-history #historyList {
  gap: 12px;
}

#page-history .history-card {
  position: relative;
  margin: 0;
  padding: 16px;
  overflow: hidden;
}

#page-history .history-card::after {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 2px;
  background: linear-gradient(180deg, var(--sw-violet-bright), transparent);
}

#page-history .history-top strong {
  font-size: 13px;
}

#page-history .history-side {
  margin-top: 8px;
  color: var(--sw-copy);
  font-size: 11px;
}

#page-history .history-actions {
  display: flex;
  gap: 8px;
  margin-top: 13px;
}

#page-feedback .feedback-status-card {
  min-width: 270px;
  padding: 14px 15px;
  border-color: rgba(78, 227, 138, 0.13) !important;
  background: rgba(78, 227, 138, 0.025) !important;
}

#page-feedback .feedback-status-card strong {
  font-size: 12px;
}

#page-feedback .feedback-status-card small {
  font-size: 9px;
  line-height: 1.4;
}

#page-feedback .feedback-layout {
  gap: 14px;
}

#page-feedback .feedback-form {
  padding: 20px;
}

#page-feedback .form-head h2 {
  font-size: 22px;
}

#page-feedback .form-head p,
#page-feedback .field-help {
  font-size: 10px;
}

#page-feedback .feedback-message {
  min-height: 190px !important;
}

#page-feedback .feedback-side {
  gap: 10px;
}

#page-feedback .clean-note,
#page-feedback .image-audit-card {
  padding: 16px;
}

#page-feedback .clean-note {
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
}

#page-feedback .note-icon {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--sw-line-strong);
  border-radius: 10px;
  background: var(--sw-violet-soft);
}

#page-feedback .clean-note h3,
#page-feedback .image-audit-card h3 {
  font-size: 15px;
}

#page-feedback .clean-note p,
#page-feedback .image-audit-card p {
  font-size: 10px;
  line-height: 1.55;
}

/* One coherent dialog system */
.modal {
  padding: 20px;
  background: rgba(1, 3, 9, 0.82) !important;
  backdrop-filter: blur(20px) saturate(112%) !important;
}

.modal .modal-box {
  border: 1px solid var(--sw-line-strong) !important;
  border-radius: 16px !important;
  background: var(--sw-panel) !important;
  box-shadow: 0 34px 120px rgba(0, 0, 0, 0.68), inset 0 1px rgba(255, 255, 255, 0.03) !important;
}

.modal .modal-head {
  min-height: 66px;
  padding: 14px 17px !important;
  border-bottom: 1px solid var(--sw-line) !important;
  background: linear-gradient(180deg, var(--sw-panel-raised), var(--sw-panel)) !important;
}

.modal .modal-head h2 {
  color: var(--sw-text);
  font-size: 19px;
  letter-spacing: -0.025em;
}

.modal .close-btn {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border: 1px solid var(--sw-line);
  border-radius: 10px;
  background: var(--sw-panel-raised);
  color: var(--sw-copy);
}

.modal .close-btn:hover {
  color: var(--sw-text);
  border-color: var(--sw-line-strong);
}

#pickerModal .modal-box {
  width: min(1180px, 96vw) !important;
  height: min(880px, 92vh) !important;
}

#pickerModal .picker-subbar {
  border-color: var(--sw-line);
  background: var(--sw-panel);
}

#pickerModal .picker-help {
  padding: 10px 17px;
  border-color: var(--sw-line);
  color: var(--sw-copy);
  font-size: 10px;
}

#pickerModal .picker-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  padding: 15px 17px 24px;
}

#pickerModal .picker-item {
  min-height: 210px;
  border-color: var(--sw-line);
  border-radius: 12px;
  background: var(--sw-panel-raised) !important;
}

#pickerModal .picker-item:hover {
  border-color: var(--sw-line-strong);
  background: var(--sw-panel-soft) !important;
}

#pickerModal .picker-item img {
  height: 126px;
  padding: 6px;
  object-fit: contain;
  background: radial-gradient(circle at 50% 55%, rgba(141, 87, 246, 0.09), #050812 74%);
}

#pickerModal .picker-item-copy {
  padding: 11px 12px 12px;
}

#pickerModal .picker-item strong {
  font-size: 12px;
}

#pickerModal .picker-item span,
#pickerModal .picker-meta b,
#pickerModal .picker-availability {
  font-size: 9px !important;
}

#detailModal .modal-box {
  width: min(900px, 96vw) !important;
}

#detailModal .detail-grid {
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: 22px;
  padding: 22px;
}

#detailModal .detail-image {
  height: 330px;
  display: grid;
  place-items: center;
  border: 1px solid var(--sw-line);
  border-radius: 13px;
  background: radial-gradient(circle at 50% 50%, rgba(141, 87, 246, 0.12), #050812 72%);
}

#detailModal .detail-image img {
  width: 100%;
  height: 100%;
  padding: 14px;
  object-fit: contain !important;
  filter: drop-shadow(0 20px 24px rgba(0, 0, 0, 0.42));
}

#detailModal .detail-title {
  margin: 8px 0 7px;
  color: var(--sw-text);
  font-size: clamp(30px, 4vw, 43px);
  line-height: 0.98;
}

#detailModal .detail-stat-grid {
  gap: 8px;
  margin: 18px 0;
}

#detailModal .detail-stat-grid .mini-stat {
  min-height: 72px;
  padding: 11px;
  border: 1px solid var(--sw-line);
  border-radius: 10px;
  background: var(--sw-panel-raised) !important;
}

#detailModal .detail-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 18px;
}

#detailModal .detail-actions .btn {
  width: 100%;
  justify-content: center;
  text-align: center;
}

#changesModal .changes-modal-box {
  width: min(980px, 96vw);
}

#changesModal .changes-summary {
  gap: 8px;
  padding: 14px 16px;
}

#changesModal .changes-summary > div {
  min-height: 76px;
  padding: 12px 14px;
  border: 1px solid var(--sw-line);
  border-radius: 10px;
  background: var(--sw-panel-raised);
}

#changesModal .changes-summary span,
#changesModal .change-metric span {
  color: var(--sw-copy);
  font-size: 10px;
}

#changesModal .change-row {
  grid-template-columns: 70px minmax(170px, 1fr) minmax(120px, 0.55fr) minmax(120px, 0.55fr) auto;
  gap: 13px;
  min-height: 84px;
  padding: 10px 14px;
  border-color: var(--sw-line);
}

#changesModal .change-row img {
  width: 70px;
  height: 58px;
  padding: 3px;
  object-fit: contain;
  background: transparent;
}

#settingsModal .settings-box {
  width: min(820px, 96vw) !important;
}

#settingsModal .settings-content {
  padding: 16px;
}

#settingsModal .settings-section {
  padding: 17px;
  border-color: var(--sw-line) !important;
  border-radius: 12px !important;
  background: var(--sw-panel-raised) !important;
}

#settingsModal .settings-title strong {
  font-size: 16px;
}

#settingsModal .settings-title span,
#settingsModal .toggle-row small {
  font-size: 10px;
  line-height: 1.45;
}

#settingsModal .toggle-row {
  min-height: 58px;
  padding: 11px 12px;
  border-color: var(--sw-line);
  background: var(--sw-panel);
}

#accountModal .account-box {
  border-radius: 16px !important;
}

#accountModal :is(.account-status, .account-security-note, .account-profile-identity p, .account-profile-stats span, .account-profile-stats small, .account-panel-foot, .account-sync-line) {
  font-size: 10px !important;
  line-height: 1.45;
}

#accountModal .account-actions {
  gap: 8px;
}

#accountModal .account-actions .btn {
  min-height: 42px;
}

#adminModal .admin-box {
  border-radius: 15px !important;
  background: var(--sw-panel) !important;
}

#adminModal .admin-tabs button {
  min-height: 36px !important;
  font-size: 10px !important;
}

#adminModal :is(.admin-stat-grid span, .admin-form-grid label > span, .admin-inbox-meta, .admin-detail-grid span, .admin-trade-metrics span, .admin-loaded-count, .admin-entry-key) {
  font-size: 9px !important;
}

#adminModal :is(.admin-mini-row strong, .admin-detail-grid strong, .admin-trade-item b, .admin-trade-metrics strong, .admin-system-list strong) {
  font-size: 11px !important;
}

#adminModal :is(.admin-card p, .admin-mini-row span, .admin-inbox-entry p, .admin-system-list span, .admin-setup-list, .admin-coin-note, .admin-password-note) {
  font-size: 10px !important;
  line-height: 1.5;
}

/* Responsive refinements */
@media (max-width: 1180px) {
  #page-trade .trade-shell {
    grid-template-columns: minmax(0, 1fr) 310px !important;
  }

  #page-target .planner-layout {
    grid-template-columns: 320px minmax(0, 1fr) !important;
  }

  #page-engine .engine-hero {
    grid-template-columns: 148px minmax(0, 1fr) 170px !important;
    gap: 18px;
  }

  #pickerModal .picker-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* The desktop sidebar is retired at 980px, so the mobile nav must begin there too. */
@media (max-width: 980px) {
  .mobile-nav {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    position: fixed;
    z-index: 100;
    left: 10px;
    right: 10px;
    bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    min-height: 66px;
    padding: 6px;
    border: 1px solid var(--sw-line-strong);
    border-radius: 17px;
    background: rgba(6, 9, 17, 0.94);
    backdrop-filter: blur(20px) saturate(120%);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
  }

  .mobile-nav button {
    min-width: 0;
  }

  .app {
    padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #page-trade .trade-shell,
  #page-target .planner-layout {
    grid-template-columns: 1fr !important;
  }

  #page-trade .trade-shell {
    width: 100% !important;
    align-items: stretch !important;
  }

  #page-trade :is(.trade-main, .verdict-card) {
    width: 100% !important;
    max-width: none !important;
  }

  #page-trade .verdict-card,
  #page-target .planner-controls {
    position: static;
  }

  #page-shop .shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Keep the compact header to one predictable row on phones and small tablets. */
@media (max-width: 767px) {
  :root {
    --top: calc(64px + env(safe-area-inset-top, 0px)) !important;
  }

  .topbar,
  body[data-theme="light"] .topbar,
  body[data-layout="classic"] .topbar {
    display: flex !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    height: var(--top) !important;
    min-height: var(--top) !important;
    gap: 7px !important;
    padding: env(safe-area-inset-top, 0px) 8px 0 !important;
  }

  .topbar .brand,
  .topbar .topbar-brand {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    display: flex !important;
    flex: 0 0 42px !important;
  }

  .topbar-brand .brand-mark,
  .topbar-brand .brand-mark img {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
  }

  .global-search {
    position: relative !important;
    left: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
  }

  .global-search input {
    height: 42px !important;
    padding-right: 9px !important;
    font-size: 16px !important;
  }

  .topbar-controls {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    gap: 5px !important;
  }

  .coin-menu-wrap,
  .profile-menu-wrap,
  #exportBtn,
  #topUpdatesBtn {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .top-online-pill,
  .top-square-button {
    display: none !important;
  }

  .top-coin-button {
    min-width: 58px !important;
    height: 42px !important;
    padding-inline: 7px !important;
  }

  .top-profile-button {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 4px !important;
  }

  .top-profile-button .guest-name,
  .top-profile-button .top-chevron {
    display: none !important;
  }

  #page-trade #useInventoryTradeBtn {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    color: var(--sw-text) !important;
    text-align: left !important;
  }

  #page-trade #useInventoryTradeBtn .inventory-mode-icon {
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    flex: 0 0 34px !important;
    place-items: center !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #page-trade #useInventoryTradeBtn > span:nth-child(2) {
    min-width: 0 !important;
    display: flex !important;
    flex: 1 1 auto !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #page-trade #useInventoryTradeBtn b {
    display: block !important;
    color: var(--sw-text) !important;
    opacity: 1 !important;
  }

  #page-trade .engine-toolbar-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  #page-trade .engine-toolbar-actions .btn,
  #page-trade .engine-toolbar-actions .engine-action {
    width: 100% !important;
    display: block !important;
  }
}

@media (max-width: 900px) {
  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) {
    min-height: 0 !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 3px 0 16px !important;
  }

  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h1,
  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h2 {
    font-size: 34px !important;
  }

  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) > :last-child:not(:first-child) {
    width: 100%;
  }

  .bv2-head-signal {
    width: fit-content !important;
  }

  #page-trade .trade-shell,
  #page-target .planner-layout {
    grid-template-columns: 1fr !important;
  }

  #page-trade .verdict-card,
  #page-target .planner-controls {
    position: static;
  }

  #page-engine .engine-hero {
    grid-template-columns: 138px minmax(0, 1fr) !important;
  }

  #page-engine .engine-score-card {
    grid-column: 1 / -1;
    min-height: 100px;
  }

  #page-shop .shop-hero,
  #page-leaderboard .leaderboard-hero {
    grid-template-columns: minmax(0, 1fr) 220px;
  }

  #pickerModal .picker-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) {
    margin-bottom: 14px !important;
  }

  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h1,
  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) h2 {
    font-size: 31px !important;
  }

  .app > .page:not(#page-home) > :is(.section-head, .engine-page-head, .page-titlebar, .casino-page-head) p {
    font-size: 11px !important;
  }

  #page-trade .trade-main,
  #page-target .planner-controls,
  #page-target .target-output-card,
  #page-insights .insight-panel,
  #page-engine .engine-panel,
  #page-feedback .feedback-form {
    padding: 13px !important;
  }

  #page-trade .trade-head {
    gap: 11px;
  }

  #page-trade .engine-toolbar {
    grid-template-columns: 1fr;
  }

  #page-trade .engine-signal-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-trade .engine-signal-strip > div {
    min-height: 82px;
  }

  #page-trade .slot {
    min-height: 111px;
  }

  #page-target .planner-banner {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 17px;
  }

  #page-target .planner-banner-score {
    display: none;
  }

  #page-target .target-results > .empty-state {
    min-height: 220px;
  }

  #page-compare .compare-drop::after {
    display: none;
  }

  #page-compare :is(#compareImageA, #compareImageB) {
    width: 100px !important;
    height: 78px !important;
    flex-basis: 100px !important;
  }

  #page-compare .bar-row {
    grid-template-columns: 82px minmax(0, 1fr) 58px;
    gap: 8px;
  }

  #page-heat .heat-stat-grid,
  #page-insights .insight-stats,
  #page-engine .engine-metric-grid,
  #page-inventory .inventory-stats,
  #page-goals .goal-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  #page-heat .heat-stat,
  #page-insights .insight-stats > div,
  #page-engine .engine-metric,
  #page-inventory .inventory-stats > .card,
  #page-goals .goal-summary > div {
    min-height: 84px;
    padding: 12px !important;
  }

  #page-engine .engine-hero {
    grid-template-columns: 1fr !important;
    min-height: 0;
    padding: 18px;
  }

  #page-engine .engine-core-visual {
    height: 150px;
  }

  #page-engine .engine-score-card {
    grid-column: auto;
  }

  #page-inventory .scan-feature {
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 14px;
  }

  #page-inventory .scan-feature-icon {
    width: 42px;
    height: 42px;
  }

  #page-inventory .scan-feature .btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  #page-shop .shop-hero,
  #page-leaderboard .leaderboard-hero {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 18px;
  }

  #page-shop .shop-balance-card,
  #page-leaderboard .leaderboard-me {
    width: 100%;
  }

  #page-shop .shop-section-block .section-head.shop-section-head h2 {
    font-size: 23px !important;
  }

  #page-shop .shop-preview.pfp-preview {
    height: 162px;
  }

  #page-leaderboard .leaderboard-podium-card {
    min-height: 135px;
    padding: 11px;
  }

  #page-feedback .feedback-status-card {
    min-width: 0;
  }

  .modal {
    padding: 0;
  }

  .modal .modal-box,
  #pickerModal .modal-box,
  #detailModal .modal-box,
  #changesModal .changes-modal-box,
  #settingsModal .settings-box {
    width: 100% !important;
    height: 100svh !important;
    max-height: none !important;
    border-radius: 0 !important;
  }

  #pickerModal .picker-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 11px;
  }

  #pickerModal .picker-item {
    min-height: 116px;
    display: grid;
    grid-template-columns: 126px minmax(0, 1fr);
  }

  #pickerModal .picker-item img {
    width: 126px;
    height: 100%;
    min-height: 116px;
  }

  #detailModal .detail-grid {
    grid-template-columns: 1fr;
    gap: 17px;
    padding: 14px;
  }

  #detailModal .detail-image {
    height: 245px;
  }

  #detailModal .detail-actions {
    grid-template-columns: 1fr 1fr;
  }

  #changesModal .changes-summary {
    grid-template-columns: 1fr 1fr 1fr;
    padding: 11px;
  }

  #changesModal .changes-summary > div {
    min-height: 70px;
    padding: 10px;
  }

  #changesModal .change-row {
    grid-template-columns: 56px minmax(0, 1fr) auto;
    gap: 10px;
    min-height: 94px;
    padding: 10px 11px;
  }

  #changesModal .change-row img {
    width: 56px;
    height: 52px;
  }

  #changesModal .change-metric {
    display: block !important;
    grid-column: 2 / -1;
    margin-top: -6px;
  }

  #changesModal .change-metric + .change-metric {
    margin-top: -8px;
  }

  #settingsModal .settings-grid,
  #settingsModal .cloud-sync-grid {
    grid-template-columns: 1fr;
  }

  #adminModal .admin-tabs {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  #page-trade .trade-actions,
  #page-trade .engine-toolbar-actions,
  #page-engine .engine-page-actions {
    grid-template-columns: 1fr 1fr !important;
  }

  #page-shop .shop-grid {
    grid-template-columns: 1fr 1fr;
  }

  #page-shop .shop-card {
    padding: 11px;
  }

  #page-shop .shop-card h3 {
    font-size: 14px;
  }

  #page-leaderboard .leaderboard-podium {
    gap: 6px;
  }

  #page-leaderboard .leaderboard-podium-card h3 {
    font-size: 12px;
  }

  #detailModal .detail-actions {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  #page-engine .engine-ring {
    animation: none !important;
  }
}


/* v2.30.34.3.8.56 — original inventory card layout */
#page-inventory .inventory-gallery-wrap {
  padding: 14px;
}

#page-inventory .inventory-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

#page-inventory .inventory-card-grid.is-empty {
  display: none;
}

#page-inventory .inventory-box-card {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background:
    radial-gradient(circle at 18% 18%, rgba(141, 87, 246, 0.12), transparent 45%),
    linear-gradient(145deg, rgba(20, 22, 31, 0.98), rgba(11, 13, 19, 0.98));
}

#page-inventory .inventory-box-media {
  position: relative;
  min-height: 126px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 14px;
  background:
    radial-gradient(circle at 50% 35%, rgba(171, 124, 255, 0.2), transparent 48%),
    linear-gradient(180deg, rgba(24, 27, 39, 0.98), rgba(13, 15, 21, 0.98));
  cursor: pointer;
}

#page-inventory .inventory-box-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent !important;
}

#page-inventory .inventory-box-qty {
  position: absolute;
  top: 8px;
  right: 8px;
  min-width: 38px;
  padding: 5px 8px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 999px;
  background: rgba(8, 10, 14, 0.86);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  text-align: center;
}

#page-inventory .inventory-box-content {
  min-width: 0;
  display: grid;
  gap: 12px;
}

#page-inventory .inventory-box-head h3 {
  margin: 0;
  font-size: 16px;
  line-height: 1.2;
}

#page-inventory .inventory-box-head p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}

#page-inventory .inventory-box-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

#page-inventory .inventory-box-metrics span {
  min-width: 0;
  padding: 10px 11px;
  border: 1px solid rgba(255,255,255,.065);
  border-radius: 12px;
  background: rgba(255,255,255,.03);
}

#page-inventory .inventory-box-metrics b {
  display: block;
  font-size: 13px;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#page-inventory .inventory-box-metrics small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

#page-inventory .inventory-box-actions {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}

#page-inventory .inventory-box-adjust {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px;
  border: 1px solid rgba(255,255,255,.065);
  border-radius: 12px;
  background: rgba(255,255,255,.03);
}

#page-inventory .inventory-box-adjust button {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 10px;
  background: rgba(141, 87, 246, 0.14);
  color: #fff;
  font-size: 17px;
  font-weight: 900;
  cursor: pointer;
}

#page-inventory .inventory-box-adjust b {
  min-width: 24px;
  text-align: center;
  font-size: 14px;
}

#page-inventory .inventory-box-secondary {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

#page-inventory .inventory-box-secondary .btn {
  min-width: 84px;
}

@media (max-width: 1180px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  #page-inventory .inventory-gallery-wrap {
    padding: 10px;
  }

  #page-inventory .inventory-card-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  #page-inventory .inventory-box-card {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
  }

  #page-inventory .inventory-box-media {
    min-height: 88px;
    padding: 8px;
  }

  #page-inventory .inventory-box-head h3 {
    font-size: 14px;
  }

  #page-inventory .inventory-box-head p {
    font-size: 10px;
  }

  #page-inventory .inventory-box-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-inventory .inventory-box-metrics span:last-child {
    grid-column: 1 / -1;
  }

  #page-inventory .inventory-box-actions {
    align-items: stretch;
  }

  #page-inventory .inventory-box-adjust,
  #page-inventory .inventory-box-secondary {
    width: 100%;
    justify-content: space-between;
  }

  #page-inventory .inventory-box-secondary .btn {
    flex: 1;
    min-width: 0;
  }
}


/* v2.30.34.3.8.57 — premium inventory showcase cards */
#page-inventory .inventory-gallery-wrap {
  padding: 0 !important;
  overflow: visible;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#page-inventory .inventory-card-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

#page-inventory .inventory-card-grid.is-empty {
  display: none;
}

#page-inventory .inventory-showcase-card {
  min-width: 0;
  display: grid;
  gap: 11px;
  padding: 12px;
  border: 1px solid rgba(126, 143, 201, 0.16);
  border-radius: 18px;
  background:
    radial-gradient(180px 120px at 50% -5%, rgba(142, 160, 255, 0.14), transparent 72%),
    linear-gradient(180deg, rgba(19, 24, 38, 0.98), rgba(9, 11, 18, 0.98));
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.26);
}

#page-inventory .inventory-showcase-card:hover {
  border-color: rgba(160, 122, 255, 0.32);
  transform: translateY(-2px);
}

#page-inventory .inventory-showcase-art {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1 / 0.92;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 16px;
  background:
    radial-gradient(circle at 50% 25%, rgba(228, 235, 255, 0.12), transparent 38%),
    radial-gradient(circle at 50% 72%, rgba(133, 149, 210, 0.12), transparent 52%),
    linear-gradient(180deg, rgba(63, 71, 92, 0.88), rgba(28, 34, 50, 0.9));
  cursor: pointer;
  overflow: hidden;
}

#page-inventory .inventory-showcase-art::after {
  content: '';
  position: absolute;
  inset: 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.06);
  pointer-events: none;
}

#page-inventory .inventory-showcase-art img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent !important;
  filter: drop-shadow(0 16px 18px rgba(0, 0, 0, 0.35));
}

#page-inventory .inventory-showcase-qty {
  position: absolute;
  top: 10px;
  right: 10px;
  min-width: 42px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(11, 14, 24, 0.96);
  border: 1px solid rgba(255,255,255,.08);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 6px 16px rgba(0,0,0,.26);
}

#page-inventory .inventory-showcase-body {
  display: grid;
  gap: 10px;
}

#page-inventory .inventory-showcase-head {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

#page-inventory .inventory-showcase-head strong {
  display: block;
  font-size: 16px;
  line-height: 1.18;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#page-inventory .inventory-showcase-head span {
  display: block;
  color: #b7bed2;
  font-size: 11px;
  line-height: 1.4;
}

#page-inventory .inventory-showcase-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

#page-inventory .inventory-showcase-stat {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(17, 22, 35, 0.95), rgba(10, 14, 25, 0.95));
}

#page-inventory .inventory-showcase-stat small {
  display: block;
  color: #8d95a9;
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
}

#page-inventory .inventory-showcase-stat b {
  display: block;
  margin-top: 8px;
  font-size: 22px;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#page-inventory .inventory-showcase-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#page-inventory .inventory-showcase-adjust {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#page-inventory .inventory-showcase-adjust button,
#page-inventory .inventory-showcase-remove {
  height: 40px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: rgba(10, 14, 25, 0.96);
  color: #fff;
  font-weight: 900;
}

#page-inventory .inventory-showcase-adjust button {
  width: 40px;
  font-size: 21px;
  line-height: 1;
  cursor: pointer;
}

#page-inventory .inventory-showcase-adjust b {
  min-width: 14px;
  text-align: center;
  font-size: 18px;
}

#page-inventory .inventory-showcase-remove {
  min-width: 78px;
  padding: 0 14px;
  color: #ff9aa5;
  cursor: pointer;
}

@media (max-width: 1380px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  #page-inventory .inventory-showcase-card {
    padding: 10px;
    gap: 9px;
  }

  #page-inventory .inventory-showcase-head strong {
    font-size: 15px;
  }

  #page-inventory .inventory-showcase-head span {
    font-size: 10px;
  }

  #page-inventory .inventory-showcase-stat b {
    font-size: 18px;
  }

  #page-inventory .inventory-showcase-adjust button,
  #page-inventory .inventory-showcase-remove {
    height: 38px;
  }
}


/* v2.30.34.3.8.62 — compact mobile inventory cards */
@media (max-width: 620px) {
  #page-inventory .inventory-card-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  #page-inventory .inventory-showcase-card {
    display: grid !important;
    grid-template-columns: 94px minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 9px !important;
    border-radius: 15px !important;
  }

  #page-inventory .inventory-showcase-art {
    width: 94px !important;
    height: 108px !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    padding: 7px !important;
    border-radius: 13px !important;
  }

  #page-inventory .inventory-showcase-art::after {
    inset: 6px !important;
    border-radius: 9px !important;
  }

  #page-inventory .inventory-showcase-qty {
    top: 6px !important;
    right: 6px !important;
    min-width: 30px !important;
    padding: 4px 7px !important;
    font-size: 9px !important;
  }

  #page-inventory .inventory-showcase-body {
    min-width: 0 !important;
    align-content: space-between !important;
    gap: 6px !important;
  }

  #page-inventory .inventory-showcase-head {
    gap: 2px !important;
  }

  #page-inventory .inventory-showcase-head strong {
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  #page-inventory .inventory-showcase-head span {
    font-size: 8.5px !important;
    line-height: 1.25 !important;
  }

  #page-inventory .inventory-showcase-stats {
    gap: 5px !important;
  }

  #page-inventory .inventory-showcase-stat {
    padding: 7px 8px !important;
    border-radius: 10px !important;
  }

  #page-inventory .inventory-showcase-stat small {
    font-size: 6.5px !important;
    letter-spacing: .08em !important;
  }

  #page-inventory .inventory-showcase-stat b {
    margin-top: 4px !important;
    font-size: 14px !important;
  }

  #page-inventory .inventory-showcase-footer {
    gap: 6px !important;
  }

  #page-inventory .inventory-showcase-adjust {
    gap: 5px !important;
  }

  #page-inventory .inventory-showcase-adjust button {
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
    font-size: 17px !important;
  }

  #page-inventory .inventory-showcase-adjust b {
    min-width: 12px !important;
    font-size: 13px !important;
  }

  #page-inventory .inventory-showcase-remove {
    min-width: 58px !important;
    height: 30px !important;
    padding: 0 8px !important;
    border-radius: 10px !important;
    font-size: 8px !important;
  }
}

@media (max-width: 390px) {
  #page-inventory .inventory-showcase-card {
    grid-template-columns: 82px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 8px !important;
  }

  #page-inventory .inventory-showcase-art {
    width: 82px !important;
    height: 98px !important;
  }

  #page-inventory .inventory-showcase-stat {
    padding: 6px !important;
  }
}

/* V2.30.34.3.8.66 - remove white / framed logo outline so the raw icon shows cleanly */
.topbar-brand .brand-mark,
.topbar-brand .brand-mark:hover,
.topbar-brand .brand-mark:focus,
.topbar-brand .brand-mark:active {
  padding: 0 !important;
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.topbar-brand .brand-mark img,
.topbar-brand .brand-mark:hover img,
.topbar-brand .brand-mark:focus img,
.topbar-brand .brand-mark:active img {
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

.info-hero-mark,
.info-hero-mark:hover,
.info-hero-mark:focus,
.dstn-source-mark {
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.info-hero-mark img,
.about-hero .info-hero-mark img,
.guest-welcome-mark img {
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* V2.30.34.3.8.68 - final top-left icon cleanup */
.topbar-brand .brand-mark,
.brand.topbar-brand .brand-mark,
.brand .brand-mark,
.topbar-brand .brand-mark:hover,
.brand.topbar-brand .brand-mark:hover,
.brand .brand-mark:hover,
.topbar-brand .brand-mark:focus,
.brand.topbar-brand .brand-mark:focus,
.brand .brand-mark:focus {
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 8px !important;
}

.topbar-brand .brand-mark img,
.brand.topbar-brand .brand-mark img,
.brand .brand-mark img {
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  object-fit: cover !important;
}


/* V3 welcome popup confetti */
.update-modal .modal-box{position:relative;overflow:hidden;}
.update-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2;}
.update-hero,.update-body{position:relative;z-index:3;}
.confetti-piece{position:absolute;top:-18px;width:10px;height:18px;border-radius:3px;box-shadow:0 0 10px rgba(255,255,255,.16);animation: updateConfettiFall linear forwards;}
.confetti-piece:nth-child(3n){width:8px;height:8px;border-radius:50%;}
.confetti-piece:nth-child(4n){width:12px;height:12px;transform-origin:center;}
@keyframes updateConfettiFall{0%{transform:translateY(-22px) rotate(0deg);opacity:0}10%{opacity:1}100%{transform:translateY(520px) rotate(540deg);opacity:0}}


/* V3 premium launch presentation */
.v3-launch-modal{
  background:
    radial-gradient(circle at 50% 14%,rgba(115,67,222,.24),transparent 34%),
    radial-gradient(circle at 7% 92%,rgba(81,217,158,.08),transparent 30%),
    rgba(2,2,7,.88)!important;
  backdrop-filter:blur(18px) saturate(1.15)!important;
  overflow:hidden!important;
}
.v3-launch-box{
  position:relative!important;
  width:min(850px,calc(100% - 20px))!important;
  max-height:min(920px,calc(100svh - 30px))!important;
  overflow:auto!important;
  border-radius:32px!important;
  border:1px solid rgba(205,179,255,.38)!important;
  background:linear-gradient(165deg,#171022 0%,#090810 49%,#07070b 100%)!important;
  box-shadow:0 50px 170px rgba(0,0,0,.82),0 0 80px rgba(116,64,232,.22),inset 0 1px 0 rgba(255,255,255,.08)!important;
  isolation:isolate;
}
.v3-launch-frame{position:absolute;inset:8px;z-index:5;border:1px solid rgba(211,190,255,.10);border-radius:25px;pointer-events:none}
.v3-launch-box:before{content:"";position:absolute;inset:-2px;z-index:-1;border-radius:inherit;background:conic-gradient(from 190deg,transparent,#a878ff 13%,transparent 26%,transparent 62%,#66dfaa 76%,transparent 88%);filter:blur(12px);opacity:.34}
.v3-launch-hero{
  min-height:360px!important;
  padding:32px 34px 26px!important;
  background:
    linear-gradient(110deg,rgba(19,12,34,.94) 0%,rgba(13,9,22,.88) 53%,rgba(7,7,12,.96) 100%),
    radial-gradient(circle at 80% 25%,rgba(148,91,255,.38),transparent 34%)!important;
  border-bottom:1px solid rgba(214,193,255,.12)!important;
  overflow:hidden!important;
}
.v3-launch-hero:before{content:"V3";position:absolute;right:-25px;bottom:-60px;font-size:260px;font-weight:1000;line-height:.8;letter-spacing:-.12em;color:rgba(166,113,255,.055);text-shadow:0 0 80px rgba(157,92,255,.14);pointer-events:none}
.v3-launch-hero:after{width:430px!important;height:430px!important;right:-180px!important;bottom:-250px!important;background:radial-gradient(circle,rgba(144,84,255,.28),transparent 64%)!important;filter:blur(4px)!important}
.v3-launch-topline{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-right:46px}
.v3-launch-brand{display:flex;align-items:center;gap:11px}
.v3-launch-logo{width:48px;height:48px;display:block;overflow:hidden;border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.08)}
.v3-launch-logo img{width:100%;height:100%;display:block;object-fit:cover}
.v3-launch-brand small,.v3-launch-brand strong{display:block}
.v3-launch-brand small{color:#8e889c;font-size:8px;font-weight:900;letter-spacing:.18em}
.v3-launch-brand strong{margin-top:4px;color:#f4efff;font-size:11px;letter-spacing:.105em}
.v3-launch-box .update-version{padding:8px 12px!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(155,93,255,.24),rgba(86,219,164,.09))!important;border:1px solid rgba(191,158,255,.35)!important;color:#f1eaff!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 8px 28px rgba(90,46,180,.18)!important;letter-spacing:.05em!important}
.v3-launch-title-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:28px;align-items:center;margin-top:36px}
.v3-launch-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#bfa1ff;font-size:10px;font-weight:950;letter-spacing:.22em}
.v3-launch-eyebrow:before,.v3-launch-eyebrow:after{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,#a978ff)}
.v3-launch-eyebrow:after{background:linear-gradient(90deg,#a978ff,transparent)}
.v3-launch-title-copy h2{margin:14px 0 12px!important;font-size:clamp(48px,7.8vw,78px)!important;line-height:.88!important;letter-spacing:-.068em!important;background:linear-gradient(180deg,#fff 5%,#e6d8ff 56%,#a87cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;filter:drop-shadow(0 14px 34px rgba(84,40,178,.26))}
.v3-launch-title-copy p{max-width:570px!important;color:#c4bdcf!important;font-size:14px!important;line-height:1.68!important}
.v3-launch-emblem{position:relative;width:172px;height:172px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 25%,rgba(201,177,255,.30),rgba(111,60,214,.18) 42%,rgba(5,5,10,.96) 70%);border:1px solid rgba(203,177,255,.30);box-shadow:0 25px 60px rgba(0,0,0,.46),0 0 80px rgba(126,69,245,.20),inset 0 0 45px rgba(143,83,255,.12)}
.v3-launch-emblem:before,.v3-launch-emblem:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(205,180,255,.13)}
.v3-launch-emblem:before{inset:10px}.v3-launch-emblem:after{inset:22px;border-style:dashed;animation:v3EmblemSpin 20s linear infinite}
.v3-launch-emblem span,.v3-launch-emblem b{position:absolute;font-size:82px;font-weight:1000;line-height:1;letter-spacing:-.12em}
.v3-launch-emblem span{left:34px;color:#f8f4ff}.v3-launch-emblem b{right:31px;color:#a678ff;text-shadow:0 0 28px rgba(157,99,255,.55)}
.v3-launch-emblem small{position:absolute;bottom:31px;color:#d9caf5;font-size:8px;font-weight:950;letter-spacing:.28em}
@keyframes v3EmblemSpin{to{transform:rotate(360deg)}}
.v3-launch-status-strip{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:30px}
.v3-launch-status-strip span{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:9px 11px;border-radius:13px;background:rgba(7,7,13,.58);border:1px solid rgba(255,255,255,.07);color:#8f899b;font-size:9px;letter-spacing:.04em;backdrop-filter:blur(10px)}
.v3-launch-status-strip b{color:#f1ebff;font-size:10px}.v3-launch-status-strip i{width:6px;height:6px;border-radius:50%;background:#69dfa8;box-shadow:0 0 11px rgba(105,223,168,.7)}
.v3-launch-body{padding:27px 30px 28px!important;background:linear-gradient(180deg,rgba(10,9,15,.95),#07070b)!important}
.v3-release-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}
.v3-release-heading h3{margin:5px 0 0;font-size:24px;letter-spacing:-.035em}.v3-release-kicker{color:#9976dd;font-size:8px;font-weight:950;letter-spacing:.19em}
.v3-launch-body .update-date{margin:0!important;white-space:nowrap;color:#746e80!important}
.v3-release-list{grid-template-columns:1fr 1fr!important;gap:10px!important}
.v3-launch-box .update-row{min-height:112px!important;grid-template-columns:44px minmax(0,1fr)!important;gap:13px!important;padding:16px!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(22,18,31,.96),rgba(11,10,17,.96))!important;border:1px solid rgba(207,185,255,.10)!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important;transition:transform .18s ease,border-color .18s ease,background .18s ease!important}
.v3-launch-box .update-row:hover{transform:translateY(-2px);border-color:rgba(169,123,255,.30)!important;background:linear-gradient(145deg,rgba(29,21,43,.98),rgba(13,11,20,.98))!important}
.v3-launch-box .update-row-icon{width:44px!important;height:44px!important;border-radius:14px!important;background:linear-gradient(145deg,#9b6cff,#5e36cb)!important;border:1px solid rgba(229,214,255,.24)!important;color:white!important;box-shadow:0 10px 25px rgba(92,47,190,.28),inset 0 1px rgba(255,255,255,.20)!important;font-size:11px!important}
.v3-launch-box .update-row strong{font-size:13px!important;color:#f4efff!important}.v3-launch-box .update-row span{margin-top:6px!important;color:#8f899a!important;font-size:10.5px!important;line-height:1.55!important}
.v3-launch-footer-note{display:flex;align-items:center;gap:13px;margin-top:13px;padding:14px 16px;border-radius:16px;background:linear-gradient(90deg,rgba(133,78,239,.12),rgba(83,218,162,.045));border:1px solid rgba(165,126,239,.13)}
.v3-launch-footer-note>span{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;border-radius:11px;background:rgba(152,95,255,.14);color:#c9aaff}.v3-launch-footer-note p{margin:0;color:#8f8998;font-size:10px;line-height:1.5}.v3-launch-footer-note b{color:#e9e1f7}
.v3-launch-actions{margin-top:16px!important;padding-top:16px!important}.v3-launch-actions .btn{min-width:140px;height:43px;border-radius:13px!important}.v3-launch-actions .btn.primary{background:linear-gradient(135deg,#a677ff,#7145e4)!important;color:white!important;box-shadow:0 13px 34px rgba(104,58,207,.30)!important}
.v3-launch-box .update-close-x{top:20px!important;right:20px!important;background:rgba(8,7,13,.72)!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 10px 30px rgba(0,0,0,.32)!important}

/* Full-screen realistic confetti cannon burst */
.v3-confetti-stage{position:fixed;inset:0;z-index:260;pointer-events:none;overflow:hidden;contain:strict}
.v3-confetti-piece{position:absolute;left:0;top:0;width:var(--w);height:var(--h);background:var(--c);border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.25);transform:translate3d(var(--sx),var(--sy),0) rotate(0deg) scale(.45);opacity:0;animation:v3ConfettiCannon var(--dur) cubic-bezier(.18,.68,.18,1) var(--delay) forwards;will-change:transform,opacity}
.v3-confetti-piece.is-circle{border-radius:50%}.v3-confetti-piece.is-streamer{border-radius:999px;box-shadow:0 0 8px color-mix(in srgb,var(--c) 60%,transparent)}
.v3-confetti-burst{position:absolute;bottom:7px;width:90px;height:90px;border-radius:50%;opacity:0;background:radial-gradient(circle,rgba(255,255,255,.96) 0 4%,rgba(178,130,255,.64) 5% 14%,rgba(116,73,227,.12) 35%,transparent 69%);filter:blur(.4px);animation:v3BurstFlash .72s ease-out forwards;transform-origin:center}
.v3-confetti-burst.left{left:-18px}.v3-confetti-burst.right{right:-18px}
.v3-confetti-burst:after{content:"";position:absolute;inset:32px;border:2px solid rgba(213,187,255,.55);border-radius:50%;animation:v3BurstRing .8s ease-out forwards}
@keyframes v3BurstFlash{0%{opacity:0;transform:scale(.1)}18%{opacity:1;transform:scale(.75)}100%{opacity:0;transform:scale(1.85)}}
@keyframes v3BurstRing{from{opacity:1;transform:scale(.1)}to{opacity:0;transform:scale(3.8)}}
@keyframes v3ConfettiCannon{
  0%{opacity:0;transform:translate3d(var(--sx),var(--sy),0) rotate(0deg) scale(.35)}
  5%{opacity:1}
  42%{opacity:1;transform:translate3d(var(--mx),var(--my),0) rotate(var(--r1)) scale(1)}
  82%{opacity:1}
  100%{opacity:0;transform:translate3d(var(--ex),var(--ey),0) rotate(var(--r2)) scale(.92)}
}

@media(max-width:720px){
  .v3-launch-box{width:calc(100% - 12px)!important;border-radius:24px!important}
  .v3-launch-hero{min-height:auto!important;padding:25px 20px 21px!important}
  .v3-launch-topline{padding-right:38px}.v3-launch-brand strong{font-size:9px}.v3-launch-brand small{font-size:7px}.v3-launch-logo{width:40px;height:40px}
  .v3-launch-title-grid{grid-template-columns:1fr;margin-top:27px}.v3-launch-emblem{display:none}.v3-launch-title-copy h2{font-size:clamp(44px,15vw,66px)!important}.v3-launch-title-copy p{font-size:12.5px!important}
  .v3-launch-status-strip{grid-template-columns:1fr}.v3-launch-status-strip span{justify-content:flex-start;padding-left:14px}
  .v3-launch-body{padding:21px 17px 20px!important}.v3-release-heading{align-items:flex-start;flex-direction:column;gap:7px}.v3-release-list{grid-template-columns:1fr!important}.v3-launch-box .update-row{min-height:auto!important}
  .v3-launch-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.v3-launch-actions .btn{min-width:0!important}
}
@media(prefers-reduced-motion:reduce){.v3-confetti-stage,.update-confetti{display:none!important}.v3-launch-emblem:after{animation:none!important}}


/* V3 fireman temporary red restyle */
.fireman-eyebrow{color:#ff9a72!important}.fireman-eyebrow:before,.fireman-eyebrow:after{background:linear-gradient(90deg,transparent,#ff6b44)!important}
.fireman-source-panel{background:radial-gradient(circle at 10% 50%,rgba(255,95,54,.14),transparent 28%),#0c0c0e!important;border-color:rgba(255,109,72,.18)!important}
.fireman-btn{background:linear-gradient(135deg,#ff6b44,#c92d16)!important;border-color:rgba(255,151,122,.34)!important;box-shadow:0 14px 34px rgba(165,40,16,.28)!important}
.fireman-list-badge{background:radial-gradient(circle at 16% 20%,rgba(255,121,77,.18),transparent 36%),linear-gradient(160deg,rgba(34,13,9,.97),rgba(12,8,8,.98))!important;border-color:rgba(255,126,84,.22)!important;box-shadow:0 18px 40px rgba(97,18,8,.22), inset 0 1px 0 rgba(255,255,255,.04)!important}
.fireman-list-badge::after{background:linear-gradient(90deg,transparent,rgba(255,139,86,.18),transparent)!important}
.fireman-list-icon{background:radial-gradient(circle at 30% 30%,rgba(255,162,108,.25),rgba(123,26,8,.15) 68%),rgba(19,10,9,.95)!important;border-color:rgba(255,146,106,.26)!important;box-shadow:0 0 0 1px rgba(255,109,59,.08),0 16px 30px rgba(119,26,8,.28)!important}
.fireman-list-icon img{object-fit:cover!important;border-radius:14px!important}
.fireman-kicker{color:#ffb59e!important}.fireman-list-title b{color:#fff0eb!important}.fireman-list-title strong{color:#ff8c67!important}.dstn-list-copy small{color:#b98d83!important}
.fireman-status span{background:linear-gradient(180deg,rgba(34,14,11,.95),rgba(15,9,8,.95))!important;border-color:rgba(255,121,77,.22)!important;color:#ffcab8!important}.fireman-status i{background:#ff6e48!important;box-shadow:0 0 10px rgba(255,110,72,.65)!important}
.fireman-source-mark{width:138px!important;height:106px!important;padding:10px!important;gap:8px;background:radial-gradient(circle at 30% 20%,rgba(255,148,101,.18),transparent 40%),#080809!important;border-color:rgba(255,126,84,.26)!important;box-shadow:0 18px 36px rgba(82,17,7,.18),inset 0 1px 0 rgba(255,255,255,.03)!important}.fireman-source-mark img{width:100%;height:68px;display:block;object-fit:cover;border-radius:12px}.fireman-source-mark strong{display:none!important}.fireman-source-mark span{margin-top:0!important;color:#ffb49d!important;font-size:7.5px!important;letter-spacing:.17em!important;text-align:center}
.v3-launch-emblem-image{background:transparent!important;border:0!important;box-shadow:none!important;display:flex!important;align-items:center;justify-content:center}.v3-launch-emblem-image:before,.v3-launch-emblem-image:after{display:none!important}.v3-launch-emblem-image img{width:178px;height:auto;display:block;filter:drop-shadow(0 18px 34px rgba(0,0,0,.34))}
@media(max-width:980px){.fireman-source-mark{width:120px!important;height:94px!important}.fireman-source-mark img{height:58px}}


/* cleaner non-AI V3 badge + bell re-open support */
.v3-launch-emblem-clean{width:188px!important;height:188px!important;padding:22px 18px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;border-radius:28px!important;background:radial-gradient(circle at 30% 20%,rgba(190,164,255,.18),transparent 38%),linear-gradient(180deg,rgba(26,18,44,.98),rgba(10,8,18,.98))!important;border:1px solid rgba(198,178,255,.24)!important;box-shadow:0 22px 54px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(140,98,230,.10)!important;position:relative;overflow:hidden}
.v3-launch-emblem-clean:before{content:"";position:absolute;inset:14px;border-radius:22px;border:1px solid rgba(212,196,255,.12)!important}
.v3-launch-emblem-clean:after{content:"";position:absolute;left:22px;right:22px;top:24px;height:54px;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.12),transparent 70%);pointer-events:none}
.v3-launch-emblem-clean strong{position:relative;z-index:1;font-size:78px!important;line-height:.92!important;letter-spacing:-.09em!important;font-weight:1000!important;color:#f7f2ff!important;text-shadow:0 12px 26px rgba(93,52,191,.28)}
.v3-launch-emblem-clean small{position:relative;z-index:1;font-size:11px!important;letter-spacing:.28em!important;font-weight:900!important;color:#b691ff!important}
.v3-launch-emblem-clean em{position:relative;z-index:1;font-style:normal!important;font-size:10px!important;letter-spacing:.12em!important;color:#8f86ab!important}
@media(max-width:980px){.v3-launch-emblem-clean{display:none!important}}


/* V3 clean launch layout — no standalone badge/card */
.v3-launch-title-grid{grid-template-columns:minmax(0,1fr)!important;max-width:760px!important;gap:0!important;margin-top:34px!important}
.v3-launch-title-copy{position:relative;z-index:3}
.v3-launch-title-copy h2{max-width:720px!important}
.v3-launch-title-copy p{max-width:650px!important}
.v3-launch-emblem,.v3-launch-emblem-clean,.v3-launch-emblem-image{display:none!important}
.v3-launch-hero:before{right:-12px!important;bottom:-42px!important;font-size:240px!important;color:rgba(166,113,255,.038)!important;text-shadow:none!important}
@media(max-width:620px){.v3-launch-hero:before{right:-18px!important;bottom:-18px!important;font-size:150px!important;color:rgba(166,113,255,.03)!important}}


/* Admin branding switch controls */
.admin-branding-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.fireman-admin-btn{background:linear-gradient(135deg,#ff6946,#bd2815)!important;border-color:rgba(255,136,99,.38)!important;color:#fff!important;box-shadow:0 12px 28px rgba(150,34,15,.24)!important}
.fireman-admin-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}
.admin-branding-actions .btn:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.45);box-shadow:none!important;transform:none!important}
@media(max-width:680px){.admin-branding-actions{width:100%;justify-content:stretch}.admin-branding-actions .btn{flex:1}}


/* V3 remote refresh command UI */
.admin-refresh-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.admin-refresh-actions .btn{white-space:nowrap}
.remote-refresh-banner{position:fixed;z-index:999999;left:50%;top:24px;transform:translateX(-50%);display:flex;align-items:center;gap:11px;max-width:calc(100% - 28px);padding:13px 17px;border:1px solid rgba(182,151,255,.30);border-radius:15px;background:rgba(10,8,17,.96);color:#f4eeff;box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 40px rgba(119,70,230,.18);backdrop-filter:blur(18px);font-size:12px;letter-spacing:.01em}
.remote-refresh-spinner{width:17px;height:17px;flex:0 0 auto;border:2px solid rgba(185,158,255,.24);border-top-color:#aa7cff;border-radius:50%;animation:bvRemoteRefreshSpin .65s linear infinite}
@keyframes bvRemoteRefreshSpin{to{transform:rotate(360deg)}}
@media(max-width:720px){.admin-refresh-actions{width:100%;justify-content:stretch}.admin-refresh-actions .btn{flex:1}.remote-refresh-banner{top:12px;width:calc(100% - 24px)}}
