/* Build 136 — smooth UI + non-blocking D1 fast-sync status. */
@media screen {
  html { scroll-behavior: smooth; }
  body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
  #main > .panel, #main > section, .tableWrap, .reportTableWrap {
    content-visibility: auto;
    contain-intrinsic-size: 1px 720px;
  }
  table { border-collapse: separate; border-spacing: 0; }
  tbody tr { contain: layout paint style; }
  button, .navItem, .card, .panel { transition: transform .12s ease, opacity .12s ease, box-shadow .12s ease; }
  button:active { transform: translateY(1px) scale(.995); }
  .d1FastSyncToast {
    position: fixed; right: 18px; bottom: 18px; z-index: 999999;
    min-width: 260px; max-width: min(420px, calc(100vw - 36px));
    padding: 12px 15px; border-radius: 14px; background: #092f20; color: #fff;
    box-shadow: 0 14px 40px rgba(0,0,0,.22); border: 1px solid rgba(255,255,255,.18);
    display: grid; gap: 3px; opacity: 0; transform: translateY(14px); pointer-events: none;
    transition: opacity .16s ease, transform .16s ease;
  }
  .d1FastSyncToast.show { opacity: 1; transform: translateY(0); }
  .d1FastSyncToast b { font-size: 13px; letter-spacing: .03em; }
  .d1FastSyncToast span { font-size: 12px; opacity: .86; }
  .d1FastSyncToast[data-state="saved"] { background: #075c35; }
  .d1FastSyncToast[data-state="error"] { background: #7a271a; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
