/* Theme A · Graphite / Silver, App34. Only application chrome uses these tokens.
   Card state, financial change, warning and destructive colors remain semantic.
   Images and uploaded avatars are never filtered or recolored. */
:root,
.appVisual30 {
  color-scheme:light;
  --theme34-page:#F2F3F5;
  --theme34-surface:#FFFFFF;
  --theme34-ink:#202226;
  --theme34-brand:#34373D;
  --theme34-line:#E2E4E8;
  --theme34-secondary:#62666E;
  --theme34-soft:#EAECF0;
  --bg:var(--theme34-page);
  --ink:var(--theme34-ink);
  --muted:var(--theme34-secondary);
  --line:var(--theme34-line);
  --soft:var(--theme34-page);
  --card:var(--theme34-surface);
  --ui30-bg:var(--theme34-page);
  --ui30-surface:var(--theme34-surface);
  --ui30-ink:var(--theme34-ink);
  --ui30-muted:var(--theme34-secondary);
  --ui30-line:var(--theme34-line);
  --ui30-accent:var(--theme34-brand);
  --mc-paper:var(--theme34-page);
  --mc-ink:var(--theme34-ink);
  --mc-muted:var(--theme34-secondary);
  --mc-line:var(--theme34-line);
  --mc-accent:var(--theme34-brand);
  --subpage-bg:var(--theme34-page);
  --subpage-ink:var(--theme34-ink);
  --subpage-muted:var(--theme34-secondary);
  --subpage-line:var(--theme34-line);
  --subpage-accent:var(--theme34-brand);
  --page26:var(--theme34-page);
  --ink26:var(--theme34-ink);
  --muted26:var(--theme34-secondary);
  --line26:var(--theme34-line);
  --social-paper:var(--theme34-page);
  --social-ink:var(--theme34-ink);
  --social-muted:var(--theme34-secondary);
  --social-line:var(--theme34-line);
  --social-green:var(--theme34-brand);
  --cn-bg:var(--theme34-page);
  --cn-card:var(--theme34-surface);
  --cn-text:var(--theme34-ink);
  --cn-sub:var(--theme34-secondary);
  --cn-line:var(--theme34-line);
  --cn-blue:var(--theme34-brand);
  --v3-card:var(--theme34-surface);
  --v3-soft:var(--theme34-page);
  --v3-line:var(--theme34-line);
  --v3-text:var(--theme34-ink);
  --v3-muted:var(--theme34-secondary);
}
html,
html.appVisual30,
html.appVisual30 body { background:var(--theme34-page); color:var(--theme34-ink); }
.appVisual30 :is(input[type=checkbox],input[type=radio],input[type=range]) { accent-color:var(--theme34-brand); }
.appVisual30 :is(.nav,.sheetTop,.chatHeader,.chatComposer) { border-color:var(--theme34-line); }
.appVisual30 .nav button.on { background:var(--theme34-soft); color:var(--theme34-ink); }
.appVisual30 .nav .navIcon { color:inherit; }
.appVisual30 .cb33 { --cb-ink:var(--theme34-ink); --cb-muted:var(--theme34-secondary); --cb-line:var(--theme34-line); --cb-green:var(--theme34-brand); }
.appVisual30 .ccCollector33 { --ccInk:var(--theme34-ink); --ccMuted:var(--theme34-secondary); --ccLine:var(--theme34-line); --ccGreen:var(--theme34-brand); }
.appVisual30 .consignment33 { --cs-bg:var(--theme34-page); --cs-ink:var(--theme34-ink); --cs-muted:var(--theme34-secondary); --cs-line:var(--theme34-line); --cs-green:var(--theme34-brand); }
.appVisual30 .cbHero33 { background:linear-gradient(125deg,#202226,#454951); }
.appVisual30 .ccShopMonogram33 { background:linear-gradient(145deg,#202226,#454951); color:#fff; }
.appVisual30 .cbOrderStatus33>b { color:var(--theme34-secondary); }
.appVisual30 .csStatus33:not([class*="state-"]),
.appVisual30 .cbBadge33:not(.pending):not(.requested):not(.sold):not(.approved):not(.completed):not(.listed):not(.rejected):not(.return_requested):not(.proposed):not(.shipped):not(.payment_recorded) { background:var(--theme34-soft); color:var(--theme34-secondary); }
.appVisual30 .chatLine.mine .bubble { background:#E3E6EB; color:var(--theme34-ink); border-color:#D9DDE3; }
.appVisual30 .chatLine:not(.mine) .bubble { background:#fff; color:var(--theme34-ink); }
/* A decorative asset chart is neutral; the adjacent signed change retains good/bad. */
.appVisual30 :is(.assetValueLine,.chartLine) { stroke:var(--theme34-brand); }
.appVisual30 .assetChartDot { fill:var(--theme34-brand); }
/* The public avatar component owns its image/fallback surface; do not frame it twice. */
.appVisual30 .ccShopMonogram33:has(.ma34Avatar) { width:52px; height:52px; background:transparent; border:0; box-shadow:none; }
