/* iOS-style crispness — loaded LAST on every page (same file in AP Pay 1 Click). Rule: wiki/shared/rules-ui-theme.md
   Sharp text (no glow), hairline borders on retina, glass top bar, soft two-layer depth instead of neon halos. Colours stay the prototype's. */
html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
body, body * { text-shadow: none !important; }
h1, h2, h3, .hello h2, h2.title, h1.pg { letter-spacing: -.022em; }
td.num, th.num, .num, .kpi .v, .pair b, .dt, .dtb, .amt { font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }

/* glass top bar */
header.top, header:not(dialog header), .topnav {
  background: rgba(10, 10, 12, .72) !important;
  -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px);
}

/* depth: thin top highlight + contact shadow + soft drop — no coloured halos */
.panel, .kpi, .co, .card, .tw, .mbox, .md-slip, .dd, .menu, dialog {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 1px 2px rgba(0, 0, 0, .45), 0 10px 28px rgba(0, 0, 0, .3) !important;
}
button.primary, .btn.primary, #mdRun.primary {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 1px 2px rgba(0, 0, 0, .45), 0 6px 16px rgba(255, 59, 48, .2) !important;
}
.brand img, .tn-logo, .dot { box-shadow: none !important; }

/* hairlines on high-density screens (iPhone / Mac retina) */
@media (min-resolution: 2dppx) {
  .panel, .kpi, .co, .card, .tw, .mbox, .md-slip, .dd, .menu, dialog, .alert, .chip, .pill, .seg, nav.main { border-width: .5px; }
  th, td { border-bottom-width: .5px; }
  header.top, .topnav { border-bottom-width: .5px !important; }
}

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
