/* Dark mode: the app follows the phone's dark setting. Deep green surfaces,
   light text, gold kept for pay and actions. Loaded last on app pages.
   The block below the hand-written base is generated from each light style
   (light backgrounds, dark text and light borders swapped for dark tokens). */
@media (prefers-color-scheme: dark) {
  :root{
    color-scheme: dark;
    --d-bg:#0e1c19; --d-surface:#162a26; --d-soft:#1f3631; --d-line:#2b443e;
    --d-text:#e6efe9; --d-muted:#a3b7af; --d-faint:#7f948c;
    --paper:#0e1c19; --mist:#1f3631; --line:#2b443e; --ink:#e6efe9; --sand:#2b3a33;
  }
  html, body, body.shell, #shell, #app, .shell-main{ background-color:var(--d-bg) !important; color:var(--d-text); }
  body:has(> #app){ background-color:#0a1513 !important; }
  img{ filter:none; }
  /* Tailwind utility colors used across the agent, owner and manager pages */
  .bg-white, .bg-white\/90, .bg-white\/95, .card, .tab-btn, .btn-light{ background-color:var(--d-surface) !important; }
  .bg-paper{ background-color:var(--d-bg) !important; }
  .bg-mist, .bg-mist\/60, .hover\:bg-mist:hover, .btn-light:hover{ background-color:var(--d-soft) !important; }
  .border-line, .border-line\/50, .border-line\/70, .divide-line\/70 > * { border-color:var(--d-line) !important; }
  .text-ink, .hover\:text-ink:hover{ color:var(--d-text) !important; }
  .text-ink\/80, .text-ink\/70{ color:#c9d8d1 !important; }
  .text-ink\/60, .text-ink\/50{ color:var(--d-muted) !important; }
  .text-ink\/45, .text-ink\/40{ color:var(--d-faint) !important; }
  .text-leaf, .btn-light{ color:#8fc9b6 !important; }
  .tab-btn{ border-color:var(--d-line) !important; color:var(--d-muted) !important; }
  .tab-btn.active{ background-color:#35665d !important; color:#fff !important; }
  .shadow-card{ --tw-shadow:0 12px 30px rgba(0,0,0,.35); }
  /* Form fields everywhere */
  input:not([type=checkbox]):not([type=radio]):not([type=range]), select, textarea{
    background-color:var(--d-soft); color:var(--d-text); border-color:var(--d-line);
  }
  input::placeholder, textarea::placeholder{ color:var(--d-faint); }
  /* Leaf-colored text on dark needs a lighter green to stay readable */
  a{ color:inherit; }
  .h2, .screen-title, h1, h2, h3, h4{ color:inherit; }
  .eyebrow{ color:#8fc9b6 !important; }
  .empty, .empty p{ color:var(--d-muted) !important; }
  body.shell{ background-color:var(--d-surface); color:var(--d-text); }
  #shell{ background-color:var(--d-surface); }
  @media (max-width:600px), ((hover:none) and (pointer:coarse)){ body.shell{ background-color:var(--d-surface); } }
  .shell-menu .sheet{ background-color:var(--d-surface); border-color:var(--d-line); }
  .shell-menu .sheet h2{ color:var(--d-muted); }
  .shell-menu .sheet a, .shell-menu .sheet button{ color:var(--d-text); }
  .shell-menu .sheet a:hover, .shell-menu .sheet button:hover{ background-color:var(--d-soft); }
  .shell-menu .sheet a[aria-current="page"]{ color:var(--d-muted); }
  .shell-menu .sheet hr{ border-top:1px solid var(--d-line); }
  .shell-menu .note{ color:var(--d-muted); }
  .shell-tabs{ background-color:var(--d-surface); border-top:1px solid var(--d-line); }
  .shell-tab{ color:var(--d-muted); }
  .shell-tab.active, .shell-tab[aria-current="page"], .shell-tab[aria-selected="true"]{ color:var(--d-text); }
  .screen-sub{ color:var(--d-muted); }
  .quick .card{ background-color:var(--d-surface); border-color:var(--d-line); }
  .lcard .specs span{ background-color:var(--d-soft); }
  .list-row .specs b{ color:var(--d-text); }
  .field input, .field select, .field textarea{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .detail-facts{ background-color:var(--d-surface); border-color:var(--d-line); }
  .tabbar{ background-color:var(--d-surface); border-top:1px solid var(--d-line); }
  .tabbar button{ color:var(--d-muted); }
  .tabbar button.active{ color:var(--d-muted); }
  .tabbar button.active svg{ background-color:var(--d-soft); }
  .shell-main .border-line.bg-white, .shell-main .bg-white.border{ border-color:var(--d-line); }
  #own-pipeline > div{ background-color:var(--d-soft); }
  .shell-main .border-dashed{ border-color:var(--d-line); }
  .shell-tab.active svg, .shell-tab[aria-current="page"] svg, .shell-tab[aria-selected="true"] svg{ background-color:var(--d-soft); }
  body .cn-more{ background-color:var(--d-soft); }
  body #crib-account>button{ border-color:var(--d-line); }
  body #crib-account.floating>button{ border-color:var(--d-line); }
  body #crib-account .menu .role{ background-color:var(--d-soft); color:var(--d-text); }
  body #crib-account .menu button{ background-color:var(--d-surface); border-color:var(--d-line); }
  #myDocs .pdf-link{ background-color:var(--d-soft); }
  .ah-steps li{ background-color:var(--d-surface); color:var(--d-text); }
  .ah-live{ color:var(--d-muted); }
  .empty-row{ background-color:var(--d-surface); }
  .empty-row strong{ color:var(--d-text); }
  .empty-row small{ color:var(--d-muted); }
  .quick .card .ic{ background-color:var(--d-surface); }
  .quick .card:nth-child(1) .ic, .quick .card:nth-child(4) .ic{ color:var(--d-muted); }
  .quick .card:nth-child(2) .ic, .quick .card:nth-child(3) .ic{ color:var(--d-muted); }
  @media (min-width:1024px) and (hover:hover) and (pointer:fine){ body:has(> #app){ background-color:var(--d-surface); } }
  @media (min-width:1024px) and (hover:hover) and (pointer:fine){ body.shell{ background-color:var(--d-surface); } }
  .crm-stat{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-today{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-task .t span{ color:var(--d-muted); }
  .crm-check{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-check svg{ color:var(--d-muted); }
  .crm-empty{ color:var(--d-muted); }
  .crm-search input{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-search svg{ color:var(--d-muted); }
  .crm-seg{ background-color:var(--d-soft); }
  .crm-seg button{ color:var(--d-muted); }
  .crm-seg button.on{ background-color:var(--d-surface); color:var(--d-text); }
  .crm-chip{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .crm-card{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-card .meta{ color:var(--d-muted); }
  .crm-card .next{ color:var(--d-muted); }
  .crm-quick a{ background-color:var(--d-soft); color:var(--d-text); }
  .crm-quick a:hover{ background-color:var(--d-soft); }
  .crm-tag{ background-color:var(--d-soft); color:var(--d-muted); }
  .crm-tag.warm{ background-color:var(--d-soft); color:var(--d-muted); }
  .crm-col{ background-color:var(--d-soft); }
  .crm-col h3{ color:var(--d-text); }
  .crm-col h3 span{ color:var(--d-muted); }
  .crm-col .sum{ color:var(--d-muted); }
  .crm-mini{ background-color:var(--d-surface); }
  .crm-mini span{ color:var(--d-muted); }
  .crm-sheet{ background-color:var(--d-surface); color:var(--d-text); }
  .crm-box{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-box h3{ color:var(--d-muted); }
  .crm-stages button{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .crm-form label{ color:var(--d-muted); }
  .crm-form input, .crm-form select, .crm-form textarea{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .crm-kinds{ background-color:var(--d-soft); }
  .crm-kinds button{ color:var(--d-muted); }
  .crm-kinds button.on{ background-color:var(--d-surface); color:var(--d-text); }
  .crm-tl::before{ background-color:var(--d-soft); }
  .crm-tl .dot{ background-color:var(--d-surface); border-color:var(--d-line); }
  .crm-tl .tx p{ color:var(--d-muted); }
  .crm-tl .tx time{ color:var(--d-muted); }
  body{ background-color:var(--d-surface); color:var(--d-text); }
  #app{ background-color:var(--d-surface); }
  @media (max-width:600px), ((hover:none) and (pointer:coarse)){ body{ background-color:var(--d-surface); } }
  .req .req-agent a{ color:var(--d-muted); }
  .near-note{ background-color:var(--d-soft); color:var(--d-muted); border-color:var(--d-line); }
  .alert-opt{ background-color:var(--d-surface); border-color:var(--d-line); }
  .sug{ background-color:var(--d-surface); border-color:var(--d-line); }
  .sug li.on, .sug li:hover{ background-color:var(--d-soft); }
  .sug-ic{ background-color:var(--d-soft); color:var(--d-muted); }
  .sug-t small{ color:var(--d-muted); }
  .sug .sug-empty{ color:var(--d-muted); }
  .eyebrow{ color:var(--d-muted); }
  .searchbar{ background-color:var(--d-surface); border-color:var(--d-line); }
  .searchbar .icon{ color:var(--d-muted); }
  .section-head a{ color:var(--d-muted); }
  .lcard{ background-color:var(--d-surface); border-color:var(--d-line); }
  .lcard .city{ color:var(--d-muted); }
  .lcard .specs{ color:var(--d-muted); }
  .lcard .specs b{ color:var(--d-text); }
  .list-row{ background-color:var(--d-surface); border-color:var(--d-line); }
  .list-row .city{ color:var(--d-muted); }
  .list-row .specs{ color:var(--d-muted); }
  .g-dots i{ background-color:var(--d-surface); }
  .g-dots i.on{ background-color:var(--d-surface); }
  .btn-ghost{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .quick .card .desc{ color:var(--d-muted); }
  .seg{ background-color:var(--d-soft); }
  .seg button{ color:var(--d-muted); }
  .seg button.on{ background-color:var(--d-surface); color:var(--d-muted); }
  .phline{ color:var(--d-muted); }
  .phline a{ color:var(--d-muted); }
  .tier{ background-color:var(--d-surface); border-color:var(--d-line); }
  .tier .cost{ color:var(--d-muted); }
  .dcard{ background-color:var(--d-surface); border-color:var(--d-line); }
  .dcard .cost{ color:var(--d-muted); }
  .dcard .rel{ background-color:var(--d-soft); color:var(--d-muted); }
  .dcard .summ{ color:var(--d-muted); }
  .dcard ul{ border-top:1px solid var(--d-line); }
  .dcard ul li{ color:var(--d-muted); }
  .dcard ul li .ck{ color:var(--d-muted); }
  .dcard .note{ color:var(--d-muted); }
  .cmp{ background-color:var(--d-surface); border-color:var(--d-line); }
  .cmp .row{ border-top:1px solid var(--d-line); }
  .cmp .row li{ color:var(--d-muted); }
  .cmp .plus{ color:var(--d-muted); }
  .sheet .panel{ background-color:var(--d-surface); }
  .sheet-close{ background-color:var(--d-soft); color:var(--d-text); border-color:var(--d-line); }
  .sheet-close:active{ background-color:var(--d-soft); }
  .sheet .sub{ color:var(--d-muted); }
  .kind-chips button{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .field label{ color:var(--d-muted); }
  .near-me .hint{ color:var(--d-muted); }
  .near-toggle{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .near-radius{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .detail-body .specs{ border-top:1px solid var(--d-line); border-bottom:1px solid var(--d-line); }
  .detail-body .desc{ color:var(--d-muted); }
  .idx-attr{ color:var(--d-muted); border-top:1px solid var(--d-line); }
  .idx-attr b{ color:var(--d-muted); }
  .list-row .courtesy, .lcard .courtesy{ color:var(--d-muted); }
  .list-row .courtesy b, .lcard .courtesy b{ color:var(--d-muted); }
  .hero-gallery .gal-nav{ background-color:var(--d-surface); color:var(--d-text); }
  .detail-facts .fact .k{ color:var(--d-muted); }
  .detail-facts .fact .v{ color:var(--d-text); }
  .load-more-wrap .meta{ color:var(--d-muted); }
  .success .ring{ background-color:var(--d-soft); color:var(--d-muted); }
  .success p{ color:var(--d-muted); }
  .forms-kicker{ color:var(--d-muted); }
  .forms-lead{ color:var(--d-muted); }
  .forms-sec{ background-color:var(--d-surface); border-color:var(--d-line); }
  .forms-sec .meta{ color:var(--d-muted); }
  .ro{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .ro b{ color:var(--d-text); }
  .pdf-link{ color:var(--d-muted); }
  .check{ color:var(--d-muted); }
  .sig-wrap{ background-color:var(--d-surface); border-color:var(--d-line); }
  .sig-wrap canvas{ background-color:var(--d-surface); }
  .sig-actions button{ color:var(--d-muted); }
  .form-error{ background-color:var(--d-soft); color:var(--d-muted); border-color:var(--d-line); }
  a.sign-btn.signed{ background-color:var(--d-soft); color:var(--d-muted); }
  .sign-note{ color:var(--d-muted); }
  .linkish{ color:var(--d-muted); }
  .sign-link{ color:var(--d-muted); }
  .sign-state{ color:var(--d-muted); }
  .sign-state.done{ color:var(--d-muted); }
  .empty{ color:var(--d-muted); }
  .load-fail p{ color:var(--d-muted); }
  .offline-bar{ background-color:var(--d-soft); color:var(--d-muted); }
  .skel{ background-color:var(--d-soft); }
  .req{ background-color:var(--d-surface); border-color:var(--d-line); }
  .kind-show{ background-color:var(--d-soft); color:var(--d-muted); }
  .kind-consult{ background-color:var(--d-soft); color:var(--d-muted); }
  .req p{ color:var(--d-muted); }
  .req .request-stage{ background-color:var(--d-soft); color:var(--d-muted); }
  .req .request-stage.warn{ background-color:var(--d-soft); color:var(--d-muted); }
  .plan-box.on{ background-color:var(--d-soft); color:var(--d-muted); }
  .plan-box.on b{ color:var(--d-muted); }
  .plan-box.terms{ background-color:var(--d-soft); color:var(--d-muted); }
  .upsell{ background-color:var(--d-surface); border-color:var(--d-line); }
  .upsell p{ color:var(--d-muted); }
  .upsell .up-row{ border-top:1px solid var(--d-line); }
  .upsell .up-name{ color:var(--d-text); }
  .upsell .up-sub{ color:var(--d-muted); }
  .upsell .up-save{ color:var(--d-muted); }
  .pay-ready{ background-color:var(--d-soft); color:var(--d-text); }
  .free-banner{ background-color:var(--d-soft); color:var(--d-muted); }
  .pass-body{ background-color:var(--d-surface); }
  .pass-meta small{ color:var(--d-muted); }
  .pass-meta b.warn{ color:var(--d-muted); }
  .req.pass .pass-msg{ color:var(--d-muted); }
  .pass-call{ background-color:var(--d-soft); color:var(--d-muted); }
  .pass-stub{ background-color:var(--d-surface); border-top:2px dashed var(--d-line); }
  .pass-stub::before, .pass-stub::after{ background-color:var(--d-surface); }
  .pass-stub .proof .code span{ background-color:var(--d-surface); color:var(--d-text); }
  .tl li:not(:last-child)::before{ background-color:var(--d-soft); }
  .tl .dot{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .tl li.current .dot{ background-color:var(--d-soft); color:var(--d-muted); }
  .tl b{ color:var(--d-text); }
  .tl li.todo b{ color:var(--d-muted); }
  .tl small{ color:var(--d-muted); }
  .req.member{ border-color:var(--d-line); }
  .proof{ background-color:var(--d-soft); color:var(--d-muted); }
  .proof .code span{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .proof .row2 button{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .heart{ background-color:var(--d-surface); }
  .detail-top .heart{ background-color:var(--d-surface); border-color:var(--d-line); }
  .list-pick{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .list-pick .ct{ color:var(--d-muted); }
  .new-list input{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .save-err{ color:var(--d-muted); }
  .saved-head .acts button{ color:var(--d-muted); }
  .saved-head .acts button.danger{ color:var(--d-muted); }
  .saved-gone{ color:var(--d-muted); }
  .saved-gone button{ color:var(--d-muted); }
  .pv-nav{ background-color:var(--d-surface); color:var(--d-text); }
  .showing-flow .step{ color:var(--d-muted); }
  .showing-flow .step.done, .showing-flow .step.current{ color:var(--d-muted); }
  .showing-flow .step.current{ color:var(--d-muted); }
  .sk{ background-color:var(--d-surface); border-color:var(--d-line); }
  .retry-btn{ background-color:var(--d-surface); color:var(--d-muted); border-color:var(--d-line); }
  .new-dot{ color:var(--d-muted); }
  .claim-facts span{ background-color:var(--d-soft); color:var(--d-text); }
  .claim-facts button{ background-color:var(--d-soft); color:var(--d-muted); }
  .status-copy{ color:var(--d-muted); }
  .proof-box{ background-color:var(--d-soft); color:var(--d-muted); }
  .proof-box input{ background-color:var(--d-surface); border-color:var(--d-line); }
  .proof-box .linkish{ color:var(--d-muted); }
  .proof-box .msg{ color:var(--d-muted); }
  .earn-hero .cashout .btn-primary{ background-color:var(--d-surface); color:var(--d-text); }
  .earn-row{ border-top:1px solid var(--d-line); }
  .earn-row small{ color:var(--d-muted); }
  .brand img{ background-color:var(--d-surface); }
  .card{ background-color:var(--d-surface); }
  .tabs{ background-color:var(--d-soft); }
  .tabs button{ color:var(--d-muted); }
  .tabs button[aria-selected="true"]{ background-color:var(--d-surface); color:var(--d-text); }
  label{ color:var(--d-muted); }
  input{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .msg.ok{ color:var(--d-text); }
  .link{ color:var(--d-muted); }
  .hint{ color:var(--d-muted); }
  footer{ color:var(--d-muted); }
  .who span{ background-color:var(--d-soft); }
  .ac-nav{ background-color:var(--d-surface); border-bottom:1px solid var(--d-line); }
  @media (min-width:900px){ .ac-nav{ border-right:1px solid var(--d-line); } }
  .ac-nav a{ color:var(--d-muted); }
  .ac-nav a.on{ background-color:var(--d-soft); color:var(--d-text); }
  .ac-nav a:hover{ background-color:var(--d-soft); }
  .ac-h1{ color:var(--d-text); }
  .stat{ background-color:var(--d-surface); border-color:var(--d-line); }
  .stat b{ color:var(--d-text); }
  .panel{ background-color:var(--d-surface); border-color:var(--d-line); }
  .kc{ background-color:var(--d-surface); border-color:var(--d-line); }
  .kc-h, .kc-row{ border-color:var(--d-line) !important; }
  .kc-in input{ background-color:var(--d-bg); color:var(--d-text); border-color:var(--d-line); }
  .fr-row{ background-color:var(--d-soft); border-color:var(--d-line); color:var(--d-text); }
  .fr-row .fr-n{ color:var(--d-muted); }
  .fr-row ol{ border-top-color:var(--d-line)!important; }
  .bar input[type=search], .bar select{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .btn.ghost{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .btn.warn{ background-color:var(--d-surface); }
  table.tbl{ background-color:var(--d-surface); border-color:var(--d-line); }
  .tbl th{ background-color:var(--d-surface); border-bottom:1px solid var(--d-line); }
  .tbl td{ border-bottom:1px solid var(--d-line); }
  .tbl tbody tr.click:hover{ background-color:var(--d-surface); }
  .tbl .who b{ color:var(--d-text); }
  .pill.ok{ background-color:var(--d-soft); color:var(--d-muted); }
  .pill.off{ background-color:var(--d-soft); }
  .pill.wait{ background-color:var(--d-soft); color:var(--d-muted); }
  .drawer{ background-color:var(--d-surface); }
  .dr-head{ background-color:var(--d-surface); border-bottom:1px solid var(--d-line); }
  .field input, .field select{ background-color:var(--d-surface); color:var(--d-text); border-color:var(--d-line); }
  .act{ background-color:var(--d-surface); border-color:var(--d-line); }
  .secret{ background-color:var(--d-surface); color:var(--d-text); }
  .li{ background-color:var(--d-surface); border-color:var(--d-line); }
  .modal form{ background-color:var(--d-surface); }
  /* Hand-tuned pieces the generator can't see */
  .req, .pass-body, .lcard, .list-row, .crm-card, .crm-box, .crm-today, .crm-stat:not(.hero), .crm-col .crm-mini, .sk, .empty-row, .proof-box{ background-color:var(--d-surface) !important; }
  .pass-stub{ background-color:#1b2b23 !important; border-top-color:#3a4a3a !important; }
  .pass-stub::before, .pass-stub::after{ background:var(--d-bg) !important; }
  .pass-stub .proof .code span, .proof .code span{ background:var(--d-soft) !important; color:#f0d9b0 !important; box-shadow:0 2px 0 #3a4a3a, 0 6px 14px rgba(0,0,0,.3) !important; }
  .proof{ background-color:#1b2b23 !important; color:#d4ddd8 !important; }
  .tl .dot{ background:var(--d-surface) !important; border-color:var(--d-line) !important; color:var(--d-faint) !important; }
  .tl li.done .dot{ background:#4d7c71 !important; border-color:#4d7c71 !important; color:#fff !important; }
  .tl li.current .dot{ background:#2e2a1d !important; border-color:#c59855 !important; color:#f0d9b0 !important; }
  .tl li:not(:last-child)::before{ background:var(--d-line) !important; }
  .tl li.done:not(:last-child)::before{ background:#4d7c71 !important; }
  .tl b{ color:var(--d-text) !important; } .tl li.todo b{ color:var(--d-faint) !important; } .tl small{ color:var(--d-muted) !important; }
  .claim-facts span, .claim-facts button, .crm-quick a, .crm-chip, .crm-seg, .crm-kinds{ background-color:var(--d-soft) !important; color:var(--d-text) !important; border-color:var(--d-line) !important; }
  .crm-chip.on{ background:#35665d !important; color:#fff !important; }
  .crm-seg button.on, .crm-kinds button.on{ background:var(--d-surface) !important; color:var(--d-text) !important; }
  .crm-col{ background-color:var(--d-soft) !important; }
  .crm-stage{ background:color-mix(in srgb, var(--sc) 22%, #162a26) !important; color:color-mix(in srgb, var(--sc) 55%, #fff) !important; }
  .crm-sheet{ background:var(--d-bg) !important; color:var(--d-text) !important; }
  .pass-call, .request-stage{ background:#1f3a33 !important; color:#8fc9b6 !important; }
  .request-stage.warn{ background:#3a2f1c !important; color:#f0d9b0 !important; }
  .offline-bar{ background:#3a2f1c !important; color:#f0d9b0 !important; }
  .retry-btn{ background:var(--d-surface) !important; color:#8fc9b6 !important; border-color:var(--d-line) !important; }
  .new-dot{ color:#6fd29b !important; }
  .heart{ background:rgba(14,28,25,.75) !important; color:#fff !important; }
  .sheet, #sheet .panel, .modal, dialog{ background-color:var(--d-surface); color:var(--d-text); }
  .btn-ghost{ background:var(--d-soft) !important; color:var(--d-text) !important; border-color:var(--d-line) !important; }
  .skel, .crm-load{ background-color:#1f3631 !important; }
  .skel::after{ background:linear-gradient(90deg, transparent, rgba(255,255,255,.06), transparent) !important; }
  .earn-hero .cashout .btn-primary{ background:linear-gradient(135deg,#f3dcae,#c59855) !important; color:#1d3833 !important; }
  .earn-hero .cashout .btn-light{ background:transparent !important; color:#e6efe9 !important; border-color:rgba(255,255,255,.35) !important; }
  /* Account menu (session.js): dark panel, light text, readable buttons */
  #crib-account .menu, body #crib-account .menu{ background:var(--d-surface) !important; color:var(--d-text) !important; box-shadow:0 18px 44px rgba(0,0,0,.5) !important; border:1px solid var(--d-line); }
  #crib-account .menu strong{ color:var(--d-text) !important; }
  #crib-account .menu small{ color:var(--d-muted) !important; }
  #crib-account .menu .role, body #crib-account .menu .role{ background:#1f3a33 !important; color:#8fc9b6 !important; }
  #crib-account .menu button, body #crib-account .menu button{ background:var(--d-soft) !important; color:var(--d-text) !important; border-color:var(--d-line) !important; }
  #crib-account .menu button[data-signout], body #crib-account .menu button[data-signout]{ background:linear-gradient(160deg,#3f7a6f,#243f3a) !important; color:#fff !important; border-color:transparent !important; }
  #crib-account .menu button[data-go="/delete-account"]{ color:#ff8a73 !important; }
  #crib-account .menu input{ background:var(--d-bg) !important; color:var(--d-text) !important; border-color:var(--d-line) !important; }
  /* Light gradients the generator skips */
  .tier.on{ background:linear-gradient(160deg,#24443d,#1c3530) !important; border-color:#c59855 !important; box-shadow:0 0 0 1px #c59855 !important; }
  .tier .metal{ color:var(--d-text) !important; } .tier .cost{ color:#8fc9b6 !important; }
  .quick .card .ic{ background:linear-gradient(150deg,#24443d,#1c3530) !important; color:#8fc9b6 !important; }
  .empty-row .er-ic{ background:linear-gradient(150deg,#24443d,#1c3530) !important; color:#8fc9b6 !important; }
  .shell-main .border-dashed{ background:var(--d-surface) !important; }
  .sk i{ background:linear-gradient(90deg,#1f3631 0%,#28423c 50%,#1f3631 100%) !important; background-size:200% 100% !important; }

  /* Consult: buying vs selling */
  .cchoice{ background:var(--d-surface); border-color:var(--d-line); color:var(--d-text); }
  .cchoice small{ color:var(--d-muted); }
  .cchoice.buy .ci{ background:#24443c; } .cchoice.sell .ci{ background:#4a3b22; }
  .side-banner.buy{ background:#1f3631; color:#cfe3db; }
  .side-banner.sell{ background:#3d311c; color:#f0d9b0; }
  .side-banner.both{ background:linear-gradient(90deg,#1f3631,#3d311c); color:#e6efe9; }
  .shw-pill{ background:#24443c; color:#cfe3db; } .shw-pill.none{ background:var(--d-soft); color:var(--d-muted); }
  .tier .shw{ color:#9fd3bf; } .tier.seller .shw, .tier .side{ color:var(--d-muted); } .tier.seller .cost, .dcard.seller .cost{ color:#e0b877; }
  .side-warn{ background:#3d311c; border-color:#6b5428; color:#f3e3c2; }
  .sh-home{ background:var(--d-surface); border-color:var(--d-line); } .sh-home span{ color:var(--d-muted); }
}
