/* Lucky-only storefront skin. MISH ident/chrome and provider-owned media remain intact.
   The shared runtime still owns merchandise and copy motion; neon has no clock. */
#lucky {
  --lk-stage: #24103f;
  --lk-panel: #2e174d;
  --lk-raised: #3a205a;
  --lk-text: #fff8e8;
  --lk-muted: #dccbe9;
  --lk-yellow: #f6eb4e;
  --lk-rule: #806092;
  --accent: var(--lk-yellow);
  --focus: var(--lk-yellow);
  --on-accent: var(--lk-stage);
  --cyan: var(--lk-yellow);
  --amber: var(--lk-yellow);
  background: var(--lk-stage);
  color: var(--lk-text);
  color-scheme: dark;
  cursor: auto;
  transition: none;
}
#lucky.lk-settled { background: var(--lk-stage); }
#lucky :is(.lk-hero, .lk-counter, .local-ai, .sample-controls, .kitco-reference) { background: var(--lk-stage); color: var(--lk-text); }
#lucky .lk-hero { align-items: start; padding-top: 44px; }
/* Retain the shared ambient movement as a faint purple light, not pink bands. */
#lucky .lk-hero > .cm-field { mix-blend-mode: luminosity; opacity: .1; }
#lucky .lk-spectral { background: none; color: transparent; opacity: .45; }
#lucky .lk-spectral span { -webkit-text-stroke: 1px var(--lk-rule); }
#lucky .x-nav { background: var(--lk-stage); border-color: var(--lk-rule); backdrop-filter: none; }
#lucky .x-brand { color: var(--lk-yellow); text-shadow: 0 0 8px #f6eb4e33; }
#lucky .x-brand b { background: var(--lk-yellow); color: var(--lk-stage); }
#lucky .x-links { color: var(--lk-muted); }
#lucky :is(.x-cta, .lk-pill) { background: var(--lk-yellow); color: var(--lk-stage); border: 1px solid var(--lk-yellow); min-height: 44px; }
#lucky :is(.x-cta, .lk-pill):hover { background: var(--lk-text); color: var(--lk-stage); border-color: var(--lk-text); }
#lucky .lk-link { color: var(--lk-yellow); border-color: var(--lk-rule); }
#lucky .lk-copy h2 { font-size: clamp(40px,4.2vw,64px); margin-bottom: 24px; }
#lucky .lk-copy > p:first-of-type { color: var(--lk-muted); }
#lucky .lk-actions { flex-wrap: wrap; gap: 16px 22px; }
#lucky :is(a, button, input, select, summary, [tabindex]):focus-visible { outline-color: var(--lk-yellow); }
#lucky ::selection { background: var(--lk-yellow); color: var(--lk-stage); }
#lucky :is(input, textarea, select) { caret-color: var(--lk-yellow); }
#lucky :is(.diagnosis-beat, .lk-tag, .lk-val, .pawn-ticket, .tradingview-market) { background: var(--lk-panel); color: var(--lk-text); border-color: var(--lk-rule); }
#lucky .diagnosis-beat { border-left: 1px solid var(--lk-yellow); }
#lucky :is(.diagnosis dt, .diagnosis-tag, .diagnosis code, .ai-label, .ai-where dt, .ai-where code, .approval-state) { color: var(--lk-yellow); }
#lucky :is(.diagnosis dd, .ai-where dd, .local-ai h3) { color: var(--lk-text); }
#lucky :is(.local-ai p, .local-ai .ai-note) { color: var(--lk-muted); }
#lucky .local-ai .ai-label { color: var(--lk-yellow); }
#lucky :is(.local-ai, .ai-where > div, .sample-controls, .kitco-reference, .kitco-metals) { border-color: var(--lk-rule); }
#lucky .lk-tag { border-radius: 4px; border: 1px solid var(--lk-rule); }
#lucky .lk-tag::before { background: var(--lk-stage); border: 1px solid var(--lk-rule); }
#lucky :is(.lk-tag p, .lk-val h3, .lk-offers dt, .lk-min, .lk-max, .lk-checks) { color: var(--lk-muted); }
#lucky .lk-tag .lk-ticket { color: var(--lk-yellow); }
#lucky .lk-hold { border-color: var(--lk-rule); }
#lucky .lk-comps li { color: var(--lk-yellow); border-color: var(--lk-rule); }
#lucky .lk-range::before { background: var(--lk-rule); }
#lucky .lk-band { background: var(--lk-yellow); }
#lucky .lk-mid { background: var(--lk-text); }
#lucky .lk-offers > div { border-color: var(--lk-yellow); }
#lucky .lk-offers dd { color: var(--lk-text); }
#lucky .pawn-showcase { --pawn-accent: var(--lk-yellow); color: var(--lk-text); }
#lucky .pawn-network-heading h3 { color: var(--lk-text); }
#lucky :is(.pawn-network-heading p, .pawn-disclaimer, .pawn-feature span, .pawn-promise) { color: var(--lk-muted); }
#lucky .pawn-network-items button > span { background: var(--lk-stage); color: var(--lk-text); }
#lucky .pawn-network-items [data-selected='true'] button > span { color: var(--lk-yellow); }
#lucky .pawn-network .pawn-connections path { stroke: var(--lk-rule); }
#lucky .pawn-network .pawn-connections path:nth-child(3n) { stroke: var(--lk-yellow); opacity: .45; }
#lucky .pawn-redemptions { border-color: var(--lk-rule); }
#lucky .pawn-redemptions :is(h4,p,strong,li span,small) { background: var(--lk-stage); text-shadow: none; }
#lucky .pawn-redemptions :is(h4,li span) { color: var(--lk-yellow); }
#lucky .pawn-redemptions :is(p,small) { color: var(--lk-muted); }
#lucky .pawn-redemptions strong { color: var(--lk-text); }
#lucky .pawn-redemptions li { border-color: var(--lk-rule); }
/* Do not set display on receipts: activation and [hidden] belong to pawn-showcase. */
#lucky .pawn-network .pawn-ticket { background: var(--lk-panel); color: var(--lk-text); box-shadow: 0 12px 24px #18092d66; }
#lucky .pawn-ticket::after { background: var(--lk-panel); }
#lucky .pawn-ticket::before { background: var(--lk-yellow); }
#lucky .pawn-network .pawn-ticket :is(h4,h5,b,dt,dd,th,td) { color: var(--lk-text); }
#lucky .pawn-network .pawn-ticket :is(p,small,caption,.pawn-ticket-title span,.pawn-ticket-tabs button) { color: var(--lk-muted); }
#lucky .pawn-network .pawn-ticket :is(dl,dl > div,th,td,.pawn-ticket-tabs) { border-color: var(--lk-rule); }
#lucky .pawn-network .pawn-ticket-tabs button[aria-selected='true'] { background: var(--lk-yellow); color: var(--lk-stage); box-shadow: none; }
#lucky .pawn-network .pawn-ticket :is(button,[role='tabpanel']):focus-visible { outline-color: var(--lk-yellow); }
#lucky .pawn-network .pawn-ticket-close { background: var(--lk-raised); color: var(--lk-yellow); border-color: var(--lk-rule); }
#lucky [hidden] { display: none !important; }
/* Theme our own financial wrappers, never filter or repaint provider media. */
#lucky :is(.kitco-copy p,.kitco-copy small,.kitco-copy [data-kitco-status],.market-copy,.market-status) { color: var(--lk-muted); }
#lucky :is(.kitco-copy a,.tradingview-market a) { color: var(--lk-yellow); }
#lucky :is(.kitco-copy h3,.kitco-metals figcaption,.tradingview-market h3) { color: var(--lk-text); }
#lucky .tradingview-market .tradingview-widget-container { background: var(--lk-panel); }
#lucky .tradingview-market .tradingview-widget-copyright { background: var(--lk-panel); color: var(--lk-muted); }
#lucky .tradingview-market .tradingview-widget-copyright .trademark { color: var(--lk-muted); }
/* The host-page attribution span otherwise keeps provider blue at only 3.18:1.
   This does not reach into or filter the provider-owned iframe or chart images. */
#lucky .tradingview-market .tradingview-widget-copyright .blue-text { color: var(--lk-yellow) !important; }
#lucky .market-status { border-color: var(--lk-rule); }
/* Original three-ball storefront sign. Steady neon, no new animation clock. */
#lucky .lk-neon-sign {
  width: min(100%, 350px);
  margin: 0 0 32px;
  padding: 22px 24px 20px;
  border: 2px solid #f6eb4e;
  border-radius: 22px;
  background: #24103f;
  color: #fff9b0;
  text-align: center;
  box-shadow: inset 0 0 14px #f6eb4e14, 0 0 12px #f6eb4e24;
}
#lucky .lk-neon-mark { display: block; width: 98px; height: 56px; margin: 0 auto 12px; overflow: visible; filter: drop-shadow(0 0 4px #f6eb4e66); }
#lucky .lk-neon-mark :is(path, circle) { fill: none; stroke: #f6eb4e; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
#lucky .lk-neon-sign span { display: block; }
#lucky .lk-neon-name { font-size: 28px; font-weight: 600; line-height: 1.1; letter-spacing: .12em; }
#lucky .lk-neon-pawn { font-size: 68px; font-weight: 600; line-height: 1.1; letter-spacing: .08em; text-shadow: 0 0 7px #f6eb4e66; }
#lucky .lk-neon-trade { margin-top: 10px; color: #f6eb4e; font-size: 12px; font-weight: 600; letter-spacing: .16em; }
