/* Optional playful palette. Layout, data, permissions and Dark stay unchanged. */
html[data-theme="playful"] {
  color-scheme: light;
  --play-page: #fcfcfe;
  --play-paper: #ffffff;
  --play-ink: #202023;
  --play-muted: #60616c;
  --play-lavender: #e9e4ff;
  --play-soft: #f4f1fc;
  --play-line: #e3e3e9;
  --play-pink: #d9007a;
  --play-lime: #dcff77;
  --play-violet: #7453cb;
  --play-up: #168258;
  --play-down: #c43d54;
  --play-up-soft: #e9f6ed;
  --play-down-soft: #fcebf0;
  --play-warning: #815c13;
  --play-warning-soft: #fff5d9;
  --bg: var(--play-page);
  --surface: var(--play-paper);
  --surface-raised: var(--play-soft);
  --surface-input: var(--play-soft);
  --raised: var(--play-soft);
  --input: var(--play-paper);
  --line: var(--play-line);
  --text: var(--play-ink);
  --muted: var(--play-muted);
  --subtle: #72727c;
  --accent: var(--play-pink);
  --accent-hover: #b90068;
  --blue: var(--play-violet);
  --green: var(--play-up);
  --red: var(--play-down);
  --chart-up: #168258;
  --chart-down: #c43d54;
  --chart-text: #30313a;
  --chart-grid: #e8e5f1;
  --chart-live: #7453cb;
  --chart-surface: #fcfcfe;
  --chart-price: #7453cb;
  --chart-price-text: #ffffff;
  --chart-line: #7453cb;
  --chart-area: #ded5ff;
  --chart-expiry: #986017;
  --chart-label-bg: #7453cb;
  --chart-label-text: #ffffff;
  --chart-muted: #73717f;
  --chart-crosshair: #8a829e;
  --auth-bg: var(--play-page);
  --auth-panel: var(--play-lavender);
  --auth-ink: var(--play-ink);
  --auth-blue: var(--play-violet);
  --auth-red: var(--play-down);
  --auth-line: var(--play-line);
  --auth-muted: var(--play-muted);
  background: var(--play-page);
  color: var(--play-ink);
}
html[data-theme="playful"] body {
  background: var(--play-page);
  color: var(--play-ink);
  font-family: var(--font-ui, "Manrope", system-ui, "Nirmala UI", sans-serif);
}
html[data-theme="playful"] :is(input, select, textarea) {
  color-scheme: light;
  color: var(--play-ink);
  caret-color: var(--play-violet);
  accent-color: var(--play-violet);
}
html[data-theme="playful"] select option {
  background: var(--play-paper);
  color: var(--play-ink);
}
html[data-theme="playful"] ::selection {
  background: var(--play-lavender);
  color: #3a2866;
}
html[data-theme="playful"] * { scrollbar-color: #c8c1d7 var(--play-page); }
html[data-theme="playful"] ::-webkit-scrollbar-track { background: var(--play-page); }
html[data-theme="playful"] ::-webkit-scrollbar-thumb {
  background: #c8c1d7;
  border-color: var(--play-page);
}
html[data-theme="playful"] :is(button, a, input, select, textarea):focus-visible {
  outline-color: var(--play-violet);
}
html[data-theme="playful"] :is(.positive, .direction-up) { color: var(--play-up); }
html[data-theme="playful"] :is(.negative, .direction-down) { color: var(--play-down); }

/* The chart remains the workspace, with a quiet account bar above it. */
html[data-theme="playful"] .edge-terminal :is(.topbar, .chart-panel, .chart-workspace, .trade-panel) {
  background: var(--play-page);
  color: var(--play-ink);
}
html[data-theme="playful"] .edge-account-bar {
  border-color: var(--play-line);
  border-radius: 18px;
  background: #f5f2fc;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="playful"] .edge-header-menu {
  background: transparent;
  color: #666071;
}
html[data-theme="playful"] .edge-header-menu:hover { background: var(--play-lavender); }
html[data-theme="playful"] .edge-balance-block { border-color: var(--play-line); }
html[data-theme="playful"] .edge-terminal .account-selector #balance {
  color: var(--play-ink);
  font-weight: 750;
}
html[data-theme="playful"] .edge-account-mode { background: #e7e1f4; }
html[data-theme="playful"] .edge-virtual-label { color: #5c5768; }
html[data-theme="playful"] .edge-terminal button.edge-demo-pill {
  background: var(--play-lime);
  color: #303b1a;
}
html[data-theme="playful"] .edge-terminal button.edge-demo-pill[data-account-mode="live"] {
  background: var(--play-lavender);
  color: #5b3486;
}
html[data-theme="playful"] .edge-terminal button.edge-demo-pill[data-account-mode="legacy"] {
  background: #e9e8ec;
  color: #57515f;
}
html[data-theme="playful"] .edge-register {
  margin: 5px 4px;
  border-radius: 999px;
  background: var(--play-ink);
  color: #fff;
}
html[data-theme="playful"] .edge-register:hover { background: #39343f; }
html[data-theme="playful"] .edge-register small { color: #e8e4ee; }
html[data-theme="playful"] .edge-register > span { font-weight: 650; }
html[data-theme="playful"] .edge-terminal .edge-deals-toggle[aria-expanded="true"] {
  background: var(--play-lavender);
  color: var(--play-pink);
}
html[data-theme="playful"] .edge-icon,
html[data-theme="playful"] .edge-market-bar .asset-selector {
  border-color: var(--play-line);
  background: var(--play-paper);
  color: #62586f;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="playful"] .edge-icon:hover,
html[data-theme="playful"] .edge-market-bar .asset-selector:hover { background: var(--play-soft); color: var(--play-ink); }
html[data-theme="playful"] .edge-market-bar .asset-selector strong { color: var(--play-ink); font-weight: 650; }
html[data-theme="playful"] .edge-market-bar .asset-selector > svg { color: var(--play-muted); }
html[data-theme="playful"] .edge-favorite[aria-pressed="true"] {
  background: #fbe6f3;
  border-color: #efc4df;
  color: var(--play-pink);
}
html[data-theme="playful"] .edge-milestones { color: var(--play-violet); }
html[data-theme="playful"] .edge-simulation-label { color: #74561b; background: #fff4d9; border-color: #ead9b0; }
html[data-theme="playful"] .edge-terminal :is(.chart-controls, .drawing-toolbar) {
  background: var(--play-paper);
  border-color: var(--play-line);
  box-shadow: none;
  backdrop-filter: none;
}
html[data-theme="playful"] .edge-terminal :is(.chart-control, .toolbar-button, .timeframes button, .drawing-toolbar button) { color: #6a6279; }
html[data-theme="playful"] .edge-terminal :is(.timeframes button.selected, .chart-control[aria-pressed="true"], .toolbar-button[aria-pressed="true"], .drawing-toolbar button.selected) {
  background: var(--play-lavender);
  color: #6843a6;
}
html[data-theme="playful"] .edge-terminal :is(.timeframes button, .chart-control, .toolbar-button, .drawing-toolbar button):hover { background: var(--play-soft); color: #513583; }
html[data-theme="playful"] .edge-terminal .chart-history-controls > button {
  background: #f5f1fc;
  border-color: var(--play-line);
  color: #5c526c;
  box-shadow: none;
}
html[data-theme="playful"] .edge-terminal .chart-history-controls > button:hover:not(:disabled) { background: var(--play-lavender); }
html[data-theme="playful"] .edge-terminal .chart-history-controls #history-live.is-live { background: var(--play-lavender); color: #634297; }
html[data-theme="playful"] .edge-terminal .chart-history-controls > button:disabled { color: #8b8693; background: #f0eef4; }
html[data-theme="playful"] .edge-terminal :is(.chart-footer, .feed-details, .history-status, .chart-footer #feed-retry) { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal .chart-trade-summary { background: #ffffffed; color: #55505f; }
html[data-theme="playful"] .edge-terminal .chart-trade-summary small { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal .chart-order-strip { background: transparent; }
html[data-theme="playful"] .edge-terminal :is(.chart-order-row, .chart-order-card) { background: #fffffff2; border-color: var(--play-line); color: var(--play-ink); box-shadow: none; }
html[data-theme="playful"] .edge-terminal :is(.chart-order-row small, .chart-order-meta, .chart-order-prices) { color: var(--play-muted); }

/* Lavender stages hold the actual stake and duration. Direction colors stay semantic. */
html[data-theme="playful"] .edge-glass {
  border-color: #ded5ed;
  border-radius: 14px;
  background: var(--play-lavender);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="playful"] .edge-glass > button { color: #6e6084; }
html[data-theme="playful"] .edge-glass > button:hover { background: #dcd1f5; color: #45345f; }
html[data-theme="playful"] .edge-terminal :is(.edge-amount-value > span, .edge-amount-value input, .edge-duration #duration) { color: var(--play-ink); font-weight: 650; }
html[data-theme="playful"] .edge-duration #duration option { background: var(--play-paper); color: var(--play-ink); }
html[data-theme="playful"] .edge-glass small { color: #625771; }
html[data-theme="playful"] .edge-terminal .edge-trade-buttons {
  border-color: var(--play-line);
  border-radius: 16px;
  background: var(--play-paper);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="playful"] .edge-terminal .edge-trade-buttons > .trade-up {
  background: var(--play-up-soft);
  color: var(--play-up);
}
html[data-theme="playful"] .edge-terminal .edge-trade-buttons > .trade-down {
  border-color: var(--play-line);
  background: var(--play-down-soft);
  color: var(--play-down);
}
html[data-theme="playful"] .edge-terminal .edge-trade-buttons > .trade-up:hover:not(:disabled) { background: #daf0e2; }
html[data-theme="playful"] .edge-terminal .edge-trade-buttons > .trade-down:hover:not(:disabled) { background: #f8dce4; }
html[data-theme="playful"] .edge-terminal .edge-trade-buttons > button:disabled { background: #efedf1; color: #817987; opacity: 1; }
html[data-theme="playful"] .edge-terminal .edge-trade-buttons .edge-direction-art { stroke: currentColor; opacity: .22; filter: none; }
html[data-theme="playful"] .edge-order-copy small { color: #645e6c; }
html[data-theme="playful"] .edge-terminal .trade-error { color: #b5324b; }
html[data-theme="playful"] .edge-terminal :is(.wallet-mode-notice, .edge-ticket-note, .trade-note, .edge-ticket-note .return-block, .edge-ticket-note .return-block strong) { color: var(--play-muted); }

/* Positions, historical records and quotes retain their table/list hierarchy. */
html[data-theme="playful"] .edge-terminal :is(.positions-panel, .watchlist-panel) { background: var(--play-page); color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal :is(.positions-heading, .positions-live-summary, .positions-footer, .trade-account-summary) { background: var(--play-soft); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] :is(.trade-page-heading > small, .trade-account-summary > div, .positions-caption, .positions-live-summary small, .empty-trades p, .mobile-position-prices, .mobile-position-meta, .mobile-position-result > small) { color: var(--play-muted); }
html[data-theme="playful"] :is(.trade-account-summary dd, .mobile-position-title strong, .watchlist-heading h2, .trade-page-heading h2) { color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal :is(.new-trade-button, .empty-trade-action, .empty-trades-icon) { background: var(--play-lavender); border-color: #d9ccf0; color: #65459b; }
html[data-theme="playful"] .position-tabs > button { color: var(--play-muted); }
html[data-theme="playful"] .position-tabs > button.active { color: var(--play-ink); border-bottom-color: var(--play-pink); }
html[data-theme="playful"] .position-tabs span { background: var(--play-lavender); color: #65459b; }
html[data-theme="playful"] .edge-terminal .positions-panel table { color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal .positions-panel th { background: var(--play-soft); border-color: var(--play-line); color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal .positions-panel td { border-color: var(--play-line); }
html[data-theme="playful"] .edge-terminal .positions-panel td small { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.positions-footer button, .account-text-button) { color: #7240a0; }
html[data-theme="playful"] .edge-terminal :is(.mobile-position, .watchlist-row, .watchlist-heading) { background: transparent; border-color: var(--play-line); color: var(--play-ink); }
html[data-theme="playful"] .watchlist-row:hover { background: var(--play-soft); }
html[data-theme="playful"] .watchlist-row small { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.trade-status.open, .trade-status.returned) { background: var(--play-lavender); color: #634297; }
html[data-theme="playful"] .edge-terminal .trade-status.won { background: var(--play-up-soft); color: var(--play-up); }
html[data-theme="playful"] .edge-terminal .trade-status.lost { background: var(--play-down-soft); color: var(--play-down); }
html[data-theme="playful"] .edge-terminal :is(.beginner-protected, .beginner-refund) { color: #65459b !important; }
html[data-theme="playful"] .edge-terminal .beginner-net { color: var(--play-muted) !important; }

/* Shared account dialogs, market picker and device-local settings. */
html[data-theme="playful"] dialog,
html[data-theme="playful"] .edge-terminal dialog,
html[data-theme="playful"] .popover,
html[data-theme="playful"] #app-dialog {
  background: var(--play-paper);
  color: var(--play-ink);
  border-color: var(--play-line);
  box-shadow: 0 18px 60px #33294c1f;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="playful"] dialog::backdrop { background: #30283f59; backdrop-filter: blur(3px); }
html[data-theme="playful"] :is(.dialog-header h2, .popover h2, #dialog-title, .dialog-copy strong, .account-phone-summary > strong, .account-phone-number) { color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal :is(.dialog-copy, .dialog-option span, .account-email, .account-choice span, .account-popover p, .notification-item p, .notification-item small) { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.dialog-balance, .account-phone-summary) { background: var(--play-soft); color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal .dialog-balance strong { color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal .dialog-option { border-color: var(--play-line); }
html[data-theme="playful"] .edge-terminal .dialog-option select { background: var(--play-soft); color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal :is(.account-form input, .account-form select, .search-input) { background: var(--play-soft); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] .edge-terminal .account-form input[readonly] { background: #f0eef4; color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.account-form input::placeholder, .search-input input::placeholder) { color: #79717f; }
html[data-theme="playful"] :is(.account-form > label, .account-phone-summary > span, .account-phone-summary > small) { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.button-gradient, .dialog-action) {
  min-height: 52px;
  border-radius: 999px;
  background: var(--play-ink);
  color: #fff;
  box-shadow: none;
}
html[data-theme="playful"] .edge-terminal :is(.button-gradient, .dialog-action):hover:not(:disabled) { background: #39343f; }
html[data-theme="playful"] .edge-terminal :is(.button-gradient, .dialog-action):disabled { background: #e9e6ee; color: #79717f; opacity: 1; }
html[data-theme="playful"] .edge-terminal :is(.search-input input, .asset-selector strong, .select-asset-button strong, .account-choice strong, .notification-item strong) { color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal :is(.popover .icon-button, .search-input svg, .asset-list-head, .select-asset-button small, .no-assets, .favorite-button) { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal :is(.asset-option:hover, .asset-filter > button:hover, .more-menu > button:hover) { background: var(--play-soft); color: var(--play-ink); }
html[data-theme="playful"] .edge-terminal .asset-filter > button { color: var(--play-muted); }
html[data-theme="playful"] .edge-terminal .asset-filter > button.active { background: var(--play-lavender); color: #634297; }
html[data-theme="playful"] .edge-terminal .favorite-button.is-favorite { color: var(--play-pink); }
html[data-theme="playful"] .edge-terminal :is(.more-menu > button, .more-menu > button > svg, .account-links > button, .account-links > a) { color: #625475; }
html[data-theme="playful"] :is(.withdrawal-row, .withdrawal-list, .account-links, .mobile-position) { border-color: var(--play-line); }
html[data-theme="playful"] :is(.withdrawal-row small, .request-status, .optional-label) { color: var(--play-muted); }
html[data-theme="playful"] .request-status.approved { color: var(--play-up); }
html[data-theme="playful"] .request-status.rejected { color: var(--play-down); }
html[data-theme="playful"] :is(.form-message, .form-feedback[data-tone="error"]) { color: var(--play-down); }
html[data-theme="playful"] .keyboard-key { background: var(--play-lavender); color: #634297; }
html[data-theme="playful"] .edge-terminal .toast { background: var(--play-paper); color: var(--play-ink); border-color: var(--play-line); box-shadow: 0 8px 30px #33294c1f; backdrop-filter: none; }
html[data-theme="playful"] .edge-terminal .toast > svg { color: var(--play-violet); }
html[data-theme="playful"] .consent-banner { background: var(--play-paper); color: var(--play-ink); border-color: var(--play-line); box-shadow: 0 12px 36px #33294c1a; }
html[data-theme="playful"] .consent-banner p { color: var(--play-muted); }
html[data-theme="playful"] .consent-actions button { background: var(--play-soft); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] .consent-actions :is(.consent-accept, .consent-reject) { background: var(--play-ink); color: #fff; }
html[data-theme="playful"] :is(.theme-options > legend, .theme-choice-name) { color: var(--play-ink); }
html[data-theme="playful"] .theme-choice { background: var(--play-paper); border-color: var(--play-line); }
html[data-theme="playful"] .theme-choice:has(input:checked) { background: var(--play-soft); border-color: var(--play-violet); }

/* Account selection keeps each real wallet's number and denomination intact. */
html[data-theme="playful"] #account-switcher-dialog { background: var(--play-paper); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] #account-switcher-dialog .account-switcher-header button { background: var(--play-soft); color: #625475; }
html[data-theme="playful"] #account-switcher-dialog .account-switcher-option { background: var(--play-page); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] #account-switcher-dialog .account-switcher-option:not(:disabled):hover { background: var(--play-soft); }
html[data-theme="playful"] #account-switcher-dialog .account-switcher-option.is-current { background: var(--play-lavender); border-color: #b5a2de; }
html[data-theme="playful"] #account-switcher-dialog :is(.account-switcher-option small, .account-switcher-note) { color: var(--play-muted); }
html[data-theme="playful"] #account-switcher-dialog .account-switcher-option.is-current .account-switcher-option-value small { color: #634297; }

/* The existing left navigation gains pale stages rather than new promotions. */
html[data-theme="playful"] dialog.edge-left-menu {
  --left-menu-text: var(--play-ink);
  --left-menu-muted: var(--play-muted);
  --left-menu-card: var(--play-soft);
  --left-menu-blue: var(--play-ink);
  background: var(--play-page);
  color: var(--play-ink);
  box-shadow: 12px 0 40px #33294c14;
}
html[data-theme="playful"] .edge-left-menu :is(.left-menu-close, .left-menu-bell) { background: var(--play-soft); color: #665872; }
html[data-theme="playful"] .edge-left-menu :is(.left-menu-close, .left-menu-bell):hover { background: var(--play-lavender); color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-modes { background: #efebf6; border-color: var(--play-line); }
html[data-theme="playful"] .edge-left-menu .left-menu-mode { color: var(--play-muted); background: transparent; }
html[data-theme="playful"] .edge-left-menu .left-menu-mode.is-active { background: var(--play-paper); color: var(--play-ink); box-shadow: none; }
html[data-theme="playful"] .edge-left-menu .left-menu-mode:not(.is-active):hover { background: var(--play-lavender); }
html[data-theme="playful"] .edge-left-menu .left-menu-balance-value { color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu :is(.left-menu-balance-currency, .left-menu-funding-label) { color: var(--play-muted); }
html[data-theme="playful"] .edge-left-menu .left-menu-action { background: var(--play-soft); border-color: var(--play-line); color: var(--play-ink); border-radius: 999px; }
html[data-theme="playful"] .edge-left-menu .left-menu-action--primary { background: var(--play-ink); border-color: var(--play-ink); color: #fff; }
html[data-theme="playful"] .edge-left-menu .left-menu-action:hover:not(:disabled) { background: var(--play-lavender); border-color: #d1c5e8; }
html[data-theme="playful"] .edge-left-menu .left-menu-action--primary:hover:not(:disabled) { background: #39343f; border-color: #39343f; }
html[data-theme="playful"] .edge-left-menu .left-menu-action:disabled { background: #efedf2; border-color: var(--play-line); color: #79717f; }
html[data-theme="playful"] .edge-left-menu .left-menu-real-funds { background: var(--play-lavender); border-color: #ddd3f3; }
html[data-theme="playful"] .edge-left-menu .left-menu-action--deposit { background: var(--play-paper); border-color: #d1c5e8; color: #634297; }
html[data-theme="playful"] .edge-left-menu .left-menu-action--deposit:hover:not(:disabled) { background: #f9f6ff; color: #513583; border-color: #bfaadf; }
html[data-theme="playful"] .edge-left-menu .left-menu-trade { background: var(--play-ink); color: #fff; border-color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-trade:hover { background: #39343f; color: #fff; border-color: #39343f; }
html[data-theme="playful"] .edge-left-menu .left-menu-promo { background: var(--play-lavender); color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-promo:not(:disabled):hover { background: #dfd6f8; }
html[data-theme="playful"] .edge-left-menu :is(.left-menu-promo-copy small, .promo--battle .left-menu-promo-copy small) { color: #655b75; }
html[data-theme="playful"] .edge-left-menu .promo--battle { background: #f0edf6; }
html[data-theme="playful"] .edge-left-menu .promo--battle:disabled { background: #f0edf6; color: #6e657a; opacity: 1; }
html[data-theme="playful"] .edge-left-menu .left-menu-promo-bolt { fill: #b39add; stroke: #8e6dc2; filter: none; }
html[data-theme="playful"] .edge-left-menu .left-menu-list { background: var(--play-paper); }
html[data-theme="playful"] .edge-left-menu .left-menu-row { border-color: var(--play-line); color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-row:hover:not(:disabled) { background: var(--play-soft); color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-row:disabled { color: #77717e; }
html[data-theme="playful"] .edge-left-menu :is(.left-menu-row-icon, .left-menu-row-copy small, .left-menu-row-end, .left-menu-row-end svg) { color: #73677f; }
html[data-theme="playful"] .edge-left-menu .left-menu-profile { background: var(--play-soft); }
html[data-theme="playful"] .edge-left-menu .left-menu-profile .left-menu-row-icon { background: var(--play-lavender); color: #68449b; }
html[data-theme="playful"] .edge-left-menu .left-menu-profile .left-menu-row-copy strong { color: var(--play-ink); }
html[data-theme="playful"] .edge-left-menu .left-menu-referral { background: var(--play-lime); color: #29341b; }
html[data-theme="playful"] .edge-left-menu .left-menu-referral:hover { background: #d1f565; }
html[data-theme="playful"] .edge-left-menu .left-menu-referral small { color: #4a5732; }

/* Recent deals uses the same readable list, not simulated activity cards. */
html[data-theme="playful"] .recent-deals-backdrop { background: #30283f40; }
html[data-theme="playful"] .recent-deals-drawer { background: var(--play-page); color: var(--play-ink); border-color: var(--play-line); }
html[data-theme="playful"] :is(.recent-deals-header, .recent-deals-tabs, .recent-deals-footer) { background: #f3effa; border-color: var(--play-line); }
html[data-theme="playful"] :is(.recent-deals-header h2, .deals-empty h3, .deal-symbol, .deal-market, .trend-market, .trend-price) { color: var(--play-ink); }
html[data-theme="playful"] :is(.recent-deals-account, .recent-deals-footer, .deals-empty p, .deal-time, .deal-amount, .deal-beginner-net, .trend-market small, .trend-state, .trend-change) { color: var(--play-muted); }
html[data-theme="playful"] .recent-deals-header > button { color: #74667f; }
html[data-theme="playful"] .recent-deals-header > button:hover { background: var(--play-lavender); color: var(--play-ink); }
html[data-theme="playful"] .recent-deals-tabs > button { color: #6c6478; }
html[data-theme="playful"] .recent-deals-tabs > button:hover { color: var(--play-ink); }
html[data-theme="playful"] .recent-deals-tabs > button[aria-selected="true"] { color: var(--play-pink); }
html[data-theme="playful"] .recent-deals-tabs > button::after { background: var(--play-pink); }
html[data-theme="playful"] .recent-deals-count { background: #e6e0ee; color: #61556e; }
html[data-theme="playful"] .recent-deals-tabs > button[aria-selected="true"] .recent-deals-count { background: #f9ddeb; color: #a80060; }
html[data-theme="playful"] :is(.recent-deals-panel, .deals-date-heading) { background: var(--play-page); border-color: var(--play-line); }
html[data-theme="playful"] .deals-date-heading { color: #6d6479; }
html[data-theme="playful"] .deals-empty-icon { background: var(--play-lavender); border-color: #ddd1f3; color: #7755a6; }
html[data-theme="playful"] .deals-empty button { background: var(--play-ink); border-color: var(--play-ink); border-radius: 999px; color: #fff; }
html[data-theme="playful"] .deals-empty button:hover { background: #39343f; border-color: #39343f; }
html[data-theme="playful"] :is(.deal-row, .trend-row, .deals-panel-note) { border-color: var(--play-line); }
html[data-theme="playful"] .deal-profit { color: var(--play-ink); }
html[data-theme="playful"] :is(.deal-profit.positive, .deal-direction.up, .trend-change.positive, .trend-state.is-live) { color: var(--play-up); }
html[data-theme="playful"] :is(.deal-profit.negative, .deal-direction.down, .trend-change.negative) { color: var(--play-down); }
html[data-theme="playful"] .deal-profit.neutral { color: var(--play-muted); }
html[data-theme="playful"] :is(.deal-source, .trend-market .trend-source) { color: #7b5a25; }
html[data-theme="playful"] .deal-beginner-refund { color: #68449b; }
html[data-theme="playful"] .deals-panel-note { color: var(--play-muted); }
html[data-theme="playful"] .trend-row { color: var(--play-ink); }
html[data-theme="playful"] .trend-row:hover { background: var(--play-soft); }
html[data-theme="playful"] .recent-deals-drawer :is(button, a):focus-visible { color: #543385; background-color: var(--play-lavender); }

/* Mobile OTP keeps its real delivery/error states, in a light native dialog. */
html[data-theme="playful"] #mobile-auth-dialog { color-scheme: light; background: var(--play-paper); color: var(--play-ink); border-color: var(--play-line); box-shadow: 0 20px 65px #33294c26; backdrop-filter: none; -webkit-backdrop-filter: none; }
html[data-theme="playful"] #mobile-auth-dialog::backdrop { background: #30283f59; }
html[data-theme="playful"] #mobile-auth-dialog :is(.mobile-auth-brand, #mobile-auth-title, #mobile-auth-recipient) { color: var(--play-ink); }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-brand strong { color: var(--play-pink); }
html[data-theme="playful"] #mobile-auth-close { background: var(--play-soft); color: #70647d; }
html[data-theme="playful"] #mobile-auth-close:hover { background: var(--play-lavender); color: var(--play-ink); }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field label { color: #57505f; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input { background: var(--play-soft); border-color: #ddd5e8; color: var(--play-ink); caret-color: var(--play-violet); }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input::placeholder { color: #817889; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input:hover:not(:disabled) { border-color: #bca7d7; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input:focus-visible { border-color: var(--play-violet); outline-color: var(--play-violet); }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input:disabled { background: #eeebf2; color: #817889; opacity: 1; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-field input:-webkit-autofill { -webkit-box-shadow: 0 0 0 1000px #f4f1fc inset; -webkit-text-fill-color: var(--play-ink); caret-color: var(--play-violet); }
html[data-theme="playful"] #mobile-auth-dialog :is(.mobile-auth-field small, #mobile-auth-description, .mobile-auth-footer p) { color: var(--play-muted); }
html[data-theme="playful"] #mobile-auth-dialog :is(.mobile-auth-text, .mobile-auth-footer a) { color: #75469e; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-text:hover:not(:disabled) { color: #512a7a; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-text:disabled { color: #82798a; }
html[data-theme="playful"] #mobile-auth-delivery { background: var(--play-soft); color: #655275; border-color: #dfd5eb; }
html[data-theme="playful"] #mobile-auth-delivery[data-delivery="local"] { background: var(--play-warning-soft); color: var(--play-warning); border-color: #ebddb0; }
html[data-theme="playful"] #mobile-auth-message { background: var(--play-soft); color: #655275; border-color: #dfd5eb; }
html[data-theme="playful"] #mobile-auth-message[data-tone="error"] { background: var(--play-down-soft); color: #ab2944; border-color: #f0c7d0; }
html[data-theme="playful"] #mobile-auth-message[data-tone="success"] { background: var(--play-up-soft); color: var(--play-up); border-color: #cce7d5; }
html[data-theme="playful"] #mobile-auth-submit { min-height: 52px; border-color: var(--play-ink); border-radius: 999px; background: var(--play-ink); color: #fff; }
html[data-theme="playful"] #mobile-auth-submit:hover:not(:disabled) { background: #39343f; }
html[data-theme="playful"] #mobile-auth-submit:active:not(:disabled) { background: #131215; }
html[data-theme="playful"] #mobile-auth-submit:disabled { background: #e9e6ee; color: #79717f; border-color: #e0dce6; }
html[data-theme="playful"] #mobile-auth-dialog .mobile-auth-footer { border-color: var(--play-line); }
html[data-theme="playful"] #mobile-auth-expiry[data-expired="true"] { color: var(--play-down) !important; }

/* These ID-scoped rules also outrank the payment module's later-loaded CSS. */
html[data-theme="playful"] :is(#payment-records-screen, #real-withdrawal-screen) { color: var(--play-ink); }
html[data-theme="playful"] #payment-records-screen :is(.payment-intro, .payment-inline-note, .payment-create-form > small, .payment-record-reason, .payment-checkout-status, .payment-record-actions > span, .payment-record-actions > small, .payment-empty, .payment-empty > p) { color: var(--play-muted); }
html[data-theme="playful"] #payment-records-screen .payment-configuration { background: var(--play-soft); border-color: #e1d8ee; }
html[data-theme="playful"] #payment-records-screen .payment-configuration > strong { color: #5c3b86; }
html[data-theme="playful"] #payment-records-screen .payment-configuration > p,
html[data-theme="playful"] #payment-records-screen .payment-configuration > small { color: var(--play-muted); }
html[data-theme="playful"] #payment-records-screen .payment-configuration[data-state="unavailable"] { background: #f1eff4; border-color: var(--play-line); }
html[data-theme="playful"] #payment-records-screen .payment-configuration[data-state="unavailable"] > strong { color: #5d5666; }
html[data-theme="playful"] #payment-records-screen :is(.payment-toolbar h3, .payment-empty > strong, .payment-record-heading > strong, .payment-create-form > label) { color: var(--play-ink); }
html[data-theme="playful"] #payment-records-screen :is(.payment-toolbar h3 > span, .payment-record-heading > strong small, .payment-record-details dt, .payment-record-details dd, .payment-history > summary > span) { color: var(--play-muted); }
html[data-theme="playful"] #payment-records-screen :is(.payment-toolbar > button, .payment-record-actions > button) { background: var(--play-soft); border-color: #dcd1ed; color: #67458f; }
html[data-theme="playful"] #payment-records-screen :is(.payment-toolbar > button, .payment-record-actions > button):hover:not(:disabled) { background: var(--play-lavender); border-color: #bda7d9; color: #513278; }
html[data-theme="playful"] #payment-records-screen :is(.payment-toolbar > button, .payment-record-actions > button):disabled { background: #eeebf2; border-color: var(--play-line); color: #82798a; }
html[data-theme="playful"] #payment-records-screen .payment-message { background: var(--play-soft); border-color: #dfd5eb; color: #655275; }
html[data-theme="playful"] #payment-records-screen .payment-message[data-tone="error"] { background: var(--play-down-soft); border-color: #f0c7d0; color: #ab2944; }
html[data-theme="playful"] #payment-records-screen.payment-deposit .payment-message[data-tone="error"] { color: #ab2944; }
html[data-theme="playful"] #payment-records-screen .payment-record { border-color: var(--play-line); }
html[data-theme="playful"] #payment-records-screen .payment-status { background: var(--play-lavender); color: #634297; }
html[data-theme="playful"] #payment-records-screen .payment-status[data-tone="review"] { background: var(--play-warning-soft); color: var(--play-warning); }
html[data-theme="playful"] #payment-records-screen .payment-status[data-tone="error"] { background: var(--play-down-soft); color: var(--play-down); }
html[data-theme="playful"] #payment-records-screen .payment-status[data-tone="muted"] { background: #eeebf2; color: #665e6e; }
html[data-theme="playful"] #payment-records-screen .payment-amount-entry { background: var(--play-lavender); border-color: #d9cdec; box-shadow: none; }
html[data-theme="playful"] #payment-records-screen .payment-amount-entry:focus-within { border-color: #a68bcf; box-shadow: none; }
html[data-theme="playful"] #payment-records-screen .payment-amount-entry > span { color: #70607e; }
html[data-theme="playful"] #payment-records-screen .payment-create-form .payment-amount-entry > input { background: transparent; color: var(--play-ink); -webkit-text-fill-color: var(--play-ink); }
html[data-theme="playful"] #payment-records-screen .payment-amount-entry > input::placeholder { color: #817889; }
html[data-theme="playful"] #payment-records-screen .payment-amount-entry > input:disabled { color: #82798a; -webkit-text-fill-color: #82798a; }
html[data-theme="playful"] #payment-records-screen .payment-create-form > button { background: var(--play-ink); border-color: var(--play-ink); border-radius: 999px; color: #fff; box-shadow: none; }
html[data-theme="playful"] #payment-records-screen .payment-create-form > button:hover:not(:disabled) { background: #39343f; border-color: #39343f; }
html[data-theme="playful"] #payment-records-screen .payment-create-form > button:active:not(:disabled) { background: #131215; border-color: #131215; }
html[data-theme="playful"] #payment-records-screen .payment-create-form > button:disabled { background: #e9e6ee; border-color: #e0dce6; color: #79717f; }
html[data-theme="playful"] #payment-records-screen .payment-hosted-button { background: var(--play-ink); color: #fff; border-radius: 999px; }
html[data-theme="playful"] #payment-records-screen .payment-hosted-button:hover { background: #39343f; }
html[data-theme="playful"] #payment-records-screen .payment-hosted-button:active { background: #131215; }
html[data-theme="playful"] #payment-records-screen .payment-history { border-color: var(--play-line); }
html[data-theme="playful"] #payment-records-screen .payment-history > summary { color: #59466c; }
html[data-theme="playful"] #payment-records-screen .payment-history > summary::after { color: #7b6b8c; }
html[data-theme="playful"] #payment-records-screen .payment-checkout { background: var(--play-paper); }
html[data-theme="playful"] :is(.payment-admin-details, .payment-admin-details summary) { color: var(--play-muted); }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-unavailable { background: var(--play-soft); border-color: #e1d8ee; }
html[data-theme="playful"] #real-withdrawal-screen :is(.real-withdrawal-unavailable > svg, .real-withdrawal-unavailable p, .real-withdrawal-availability) { color: var(--play-muted); stroke: currentColor; }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-unavailable h3 { color: var(--play-ink); }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-disabled { background: #e9e6ee; border-color: #e0dce6; color: #79717f; }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-availability[role="alert"] { color: var(--play-down); }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-retry { background: var(--play-lavender); border-color: #d9cdec; color: #634297; }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-retry:hover:not(:disabled) { background: #ded3f5; border-color: #bca5d8; }
html[data-theme="playful"] #real-withdrawal-screen .real-withdrawal-retry:disabled { background: #e9e6ee; color: #79717f; }

/* Entry and language selection share the palette without adding a landing hero. */
html[data-theme="playful"] :is(.edge-entry, .edge-splash) { background: var(--play-page); color: var(--play-ink); }
html[data-theme="playful"] .splash-mark { background: var(--play-lavender); border-color: #dfd3f4; box-shadow: none; }
html[data-theme="playful"] .splash-mark::after { border-color: #eee7f9; }
html[data-theme="playful"] :is(.edge-wordmark > span, .entry-brand strong) { color: var(--play-pink); }
html[data-theme="playful"] :is(.edge-splash > p, .language-heading p, .entry-feedback, .entry-footer, .language-name small) { color: var(--play-muted); }
html[data-theme="playful"] :is(.entry-brand, .language-heading h1, .language-name strong, .entry-noscript h1) { color: var(--play-ink); }
html[data-theme="playful"] .splash-progress { background: var(--play-lavender); }
html[data-theme="playful"] .splash-progress > i { background: var(--play-pink); }
html[data-theme="playful"] .language-option { background: var(--play-paper); border-color: var(--play-line); color: var(--play-ink); }
html[data-theme="playful"] .language-option:hover { background: var(--play-soft); border-color: #d4c4e9; }
html[data-theme="playful"] .language-option:has(input:checked) { background: var(--play-lavender); border-color: #bda7dc; }
html[data-theme="playful"] .language-letter { background: #f0ebf8; color: #776389; }
html[data-theme="playful"] .language-option:has(input:checked) .language-letter { background: #d7c8ef; color: #654391; }
html[data-theme="playful"] .language-check { border-color: #c9bfd8; background: transparent; color: #fff; }
html[data-theme="playful"] .language-option:has(input:checked) .language-check { background: var(--play-violet); border-color: var(--play-violet); color: #fff; }
html[data-theme="playful"] .entry-continue { min-height: 52px; border-radius: 999px; background: var(--play-ink); color: #fff; box-shadow: none; }
html[data-theme="playful"] .entry-continue:hover:not(:disabled) { background: #39343f; }
html[data-theme="playful"] .entry-continue:disabled { background: #e9e6ee; color: #79717f; }
html[data-theme="playful"] .entry-footer > a { color: #6c4397; }
html[data-theme="playful"] .entry-noscript { background: var(--play-paper); color: var(--play-muted); }

/* Standalone login keeps its existing number-and-code form. */
html[data-theme="playful"] body.auth-page {
  --bg: var(--play-page); --surface: var(--play-paper); --input: var(--play-soft);
  --line: var(--play-line); --text: var(--play-ink); --muted: var(--play-muted);
  --subtle: #72727c; --accent: var(--play-violet); --accent-hover: #5c3aa8;
  background: var(--play-page); color: var(--play-ink);
}
html[data-theme="playful"] .auth-page .brand-side { background: var(--play-lavender); border-color: #dfd5ef; color: var(--play-ink); }
html[data-theme="playful"] .auth-page .form-side { background: var(--play-page); color: var(--play-ink); }
html[data-theme="playful"] .auth-page :is(.brand-story h2, .form-heading h1) { font-family: inherit; color: var(--play-ink); font-weight: 700; }
html[data-theme="playful"] .auth-page :is(.brand-story > p, .brand-story .brand-hindi, .brand-note, .brand-footer, .form-heading p, .field-hint, .demo-entry p, .auth-footer) { color: var(--play-muted); }
html[data-theme="playful"] .auth-page .field label { color: #57505f; }
html[data-theme="playful"] .auth-page .field input { min-height: 48px; border-radius: 12px; background: var(--play-soft); border-color: #ddd5e8; color: var(--play-ink); }
html[data-theme="playful"] .auth-page .primary-button { min-height: 52px; border-radius: 999px; background: var(--play-ink); color: #fff; }
html[data-theme="playful"] .auth-page .primary-button:hover:not(:disabled) { background: #39343f; }
html[data-theme="playful"] .auth-page :is(.secondary-button, .demo-entry .secondary-button) { min-height: 52px; border-radius: 999px; background: var(--play-lavender); border-color: #ddd0f0; color: #5d3987; }
html[data-theme="playful"] .auth-page :is(.secondary-button, .demo-entry .secondary-button):hover:not(:disabled) { background: #ddd1f5; }
html[data-theme="playful"] .auth-page :is(.primary-button, .secondary-button):disabled { background: #e9e6ee; color: #79717f; }
html[data-theme="playful"] .auth-page :is(.text-button, .auth-footer button) { color: #724695; }
html[data-theme="playful"] .auth-page :is(.otp-delivery, .setup-notice) { background: var(--play-soft); border-color: #dfd5eb; color: #655275; }
html[data-theme="playful"] .auth-page .otp-delivery[data-delivery="local"] { background: var(--play-warning-soft); color: var(--play-warning); border-color: #ebddb0; }
html[data-theme="playful"] .auth-page .form-feedback[data-tone="success"] { color: var(--play-up); }

/* Master admin remains a compact, factual records workspace. */
html[data-theme="playful"] :is(.admin-shell .sidebar, .admin-shell .topbar, .admin-shell .panel, .admin-shell .table-scroll, .boot-screen) { background: var(--play-paper); border-color: var(--play-line); color: var(--play-ink); }
html[data-theme="playful"] .admin-shell .workspace { background: var(--play-page); color: var(--play-ink); }
html[data-theme="playful"] .admin-shell .sidebar .nav-item { color: var(--play-muted); }
html[data-theme="playful"] .admin-shell .sidebar .nav-item:hover { background: var(--play-soft); }
html[data-theme="playful"] .admin-shell .sidebar .nav-item.active { background: var(--play-lavender); color: #5e3a89; }
html[data-theme="playful"] .admin-shell .sidebar .nav-item.active::before { background: var(--play-pink); }
html[data-theme="playful"] .admin-shell :is(.nav-count, .avatar, .activity-avatar, .metric-icon) { background: var(--play-lavender); color: #654391; }
html[data-theme="playful"] .admin-shell :is(.metric, .workspace-note, .user-detail-summary > div, .tracking-details, .user-profile-editor) { background: var(--play-soft); border-color: var(--play-line); }
html[data-theme="playful"] .admin-shell :is(.metric-value, .workspace-note strong, .user-detail-summary dd, .user-profile-fields dd, .cell-person strong, .activity-person strong, .admin-identity strong, .breadcrumb strong) { color: var(--play-ink); }
html[data-theme="playful"] .admin-shell :is(.metric-caption, .metric-label, .page-heading p, .panel-heading p, .record-secondary, .user-records-note, .user-payment-note, .user-detail-summary dt, .user-profile-fields dt, .field-description, .muted) { color: var(--play-muted); }
html[data-theme="playful"] .admin-shell :is(th, .table-toolbar, .pagination, .review-box) { background: var(--play-soft); border-color: var(--play-line); }
html[data-theme="playful"] .admin-shell :is(td, .panel-heading, .activity-item, .user-record-tabs) { border-color: var(--play-line); }
html[data-theme="playful"] .admin-shell tbody tr:not(.review-row):hover { background: #f8f5fd; }
html[data-theme="playful"] .admin-shell :is(.search-field, .tracking-form > input, .review-box textarea, .user-profile-inputs input:not([type="checkbox"]), .user-profile-inputs select) { background: var(--play-paper); border-color: #dcd3e7; color: var(--play-ink); }
html[data-theme="playful"] .admin-shell .button-primary { background: var(--play-ink); color: #fff; border-color: var(--play-ink); border-radius: 999px; }
html[data-theme="playful"] .admin-shell .button-primary:hover:not(:disabled) { background: #39343f; }
html[data-theme="playful"] .admin-shell .button-approve { background: var(--play-up); color: #fff; }
html[data-theme="playful"] .admin-shell .button-reject { background: var(--play-down-soft); color: var(--play-down); }
html[data-theme="playful"] .admin-shell :is(.button-secondary, .row-action, .page-controls button) { background: var(--play-soft); border-color: #dcd3e7; color: #654391; }
html[data-theme="playful"] .admin-shell :is(.text-button, .user-name-link:hover strong, .user-detail .record-details summary) { color: #75469e; }
html[data-theme="playful"] .admin-shell :is(.user-record-tabs button.active, .user-record-tabs button:hover) { color: #654391; border-color: var(--play-pink); }
html[data-theme="playful"] .admin-shell :is(.status-neutral, .status-tie, .status-pending, .user-payment-status) { background: var(--play-lavender); color: #654391; }
html[data-theme="playful"] .admin-shell :is(.status-admin, .status-open) { background: var(--play-lavender); color: #654391; }
html[data-theme="playful"] .admin-shell :is(.status-active, .status-won, .status-approved, .notice-success) { background: var(--play-up-soft); color: var(--play-up); }
html[data-theme="playful"] .admin-shell :is(.status-blocked, .status-lost, .status-rejected, .notice-error) { background: var(--play-down-soft); color: var(--play-down); }
html[data-theme="playful"] .admin-shell .row-action.block-action { background: var(--play-down-soft); color: var(--play-down); border-color: #efcbd4; }
html[data-theme="playful"] .admin-shell .row-action.unblock-action { background: var(--play-up-soft); color: var(--play-up); border-color: #cce7d5; }
html[data-theme="playful"] :is(.edge-boot-error, .account-startup-error, .terminal-startup-failed) { background: var(--play-page); color: var(--play-ink); }
html[data-theme="playful"] :is(.edge-boot-error > p, .account-startup-error p, .boot-screen p) { color: var(--play-muted); }
html[data-theme="playful"] :is(.edge-boot-actions > button, .edge-boot-login) { background: var(--play-ink); color: #fff; border-color: var(--play-ink); border-radius: 999px; }

@media (max-width: 760px) {
  html[data-theme="playful"] .edge-account-bar { border-radius: 15px; }
  html[data-theme="playful"] .edge-register { margin: 5px 3px; }
  html[data-theme="playful"] .edge-register > span { font-size: 15px; }
  html[data-theme="playful"] .edge-register small { font-size: 9px; }
  html[data-theme="playful"] .edge-glass { border-radius: 12px; }
  html[data-theme="playful"] .edge-terminal .edge-trade-buttons { border-radius: 14px; }
}
@media (prefers-reduced-transparency: reduce) {
  html[data-theme="playful"] dialog::backdrop { background: #51475f80; backdrop-filter: none; }
}
