/* Theme bridge for the shared pages (Trust Passport, Notifications, sign-in,
   devices, legal…) that still use app.css. tokens.css supplies each theme's
   colours; here the older app.css names and fixed whites follow them.
   Light stays exactly as before. A dark theme applies when one is chosen
   (Dark / Velvet / Green / Amber) or, with no choice saved, when the phone is
   in dark mode - the same rule the apps use. */

:root[data-theme="dark"],:root[data-theme="velvet"],:root[data-theme="green"],:root[data-theme="amber"]{
  --espresso:var(--ink);--sand:var(--bg);--cream:var(--bg);--card:var(--sheet);--faint:var(--muted);
  --red:var(--brand);--tile:var(--sheet-2);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme]){
    --espresso:var(--ink);--sand:var(--bg);--cream:var(--bg);--card:var(--sheet);--faint:var(--muted);
    --red:var(--brand);--tile:var(--sheet-2);
  }
}

/* Everything below only matters in a dark theme: the selectors carry the
   same two conditions through a class the early script adds (rc-dark). */
.rc-dark body{background:var(--bg);color:var(--ink)}
.rc-dark a{color:var(--brand-text)}
.rc-dark .card,.rc-dark .notif-row,.rc-dark .pp-empty,.rc-dark .pp-roleswitch a{background:var(--sheet);border-color:var(--line)}
.rc-dark .notif-row.unread{background:var(--brand-soft);border-color:var(--line)}
.rc-dark .notif-row:hover{border-color:var(--ink-2)}
.rc-dark .backbtn{background:var(--sheet);border-color:var(--line);color:var(--ink)}
.rc-dark .backbtn:hover{background:var(--sheet-2);color:var(--ink)}
.rc-dark .btn-ghost{border-color:var(--line);color:var(--ink)}
.rc-dark .btn-primary{background:var(--brand);color:var(--brand-ink,#fff)}
.rc-dark .pp-roleswitch a.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.rc-dark .skin-dot.on{border-color:var(--ink)}
.rc-dark .muted{color:var(--muted)}
.rc-dark .h1,.rc-dark h1,.rc-dark h2,.rc-dark h3{color:var(--ink)}
.rc-dark input,.rc-dark select,.rc-dark textarea{background:var(--sheet);color:var(--ink);border-color:var(--line)}
/* the Trust card: a card on the theme's own sheet, skins keep their colour */
.rc-dark .tcard{background:var(--sheet);box-shadow:0 16px 40px -22px rgba(0,0,0,.8)}
.rc-dark .tcard[data-skin=black]{--tc:var(--ink)}
.rc-dark .tcard[data-skin=black] .tc-tier{color:var(--bg)}
.rc-dark .tc-chip{background:var(--sheet-2);border-color:var(--line)}
/* account pages (devices, consent) */
.rc-dark .dev{background:var(--sheet);border-color:var(--line)}
.rc-dark .dev-t b{color:var(--ink)}
.rc-dark .dev-here{background:color-mix(in srgb,#2FBF7A 22%,transparent);color:#7FE3AE}
.rc-dark .sub{color:var(--ink-2)}
