/* ============================================================
   Universal field + box polish — loaded on EVERY page.
   We override the shared --line variable so ANYTHING that draws a
   border with it (panels, bars, tiles, fields, boxes) gets the SAME
   clearly-visible weight at once — no per-class list to keep in sync.
   --line-2 (subtle internal dividers) is left light on purpose.
   ============================================================ */
:root{ --line:#a7aeba !important; }

/* Kill the slashed zero: DM Mono draws a line through every 0, which reads as ugly
   in order #s / quantities. Swap all mono text for a clean sans (plain 0) everywhere. */
:root{ --mono: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important; }
.scan-input, .nav-section, .dash-section-label, [style*="DM Mono"]{
  font-family:-apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* fields (pills) — same border, static on hover, faint placeholders */
input, select, textarea{ border-color:#a7aeba !important; }
input:hover, select:hover, textarea:hover{ border-color:#a7aeba !important; box-shadow:none !important; }
input:focus, select:focus, textarea:focus{ border-color:#7d8797 !important; box-shadow:none !important; }
::placeholder{ color:#c4c8d3 !important; opacity:1 !important; }

/* buttons — transparent pill by default; on hover: black with white letters.
   Covers every variant (ghost/green/amber/red) so they're uniform. */
.btn, .btn.ghost, .btn.amber, .btn.red, .btn.dark, .btn.go{
  background:transparent !important; color:#1a1a2e !important;
  border:1.5px solid #a7aeba !important; border-radius:999px !important; font-weight:700 !important; filter:none !important;
}
.btn:hover, .btn.ghost:hover, .btn.amber:hover, .btn.red:hover, .btn.dark:hover, .btn.go:hover{
  background:#14141c !important; color:#fff !important; border-color:#14141c !important;
}
.btn:hover i{ color:#fff !important; }
.btn[disabled], .btn:disabled{ opacity:.4 !important; background:transparent !important; color:#1a1a2e !important; }
/* ADD / NEW buttons keep their green fill + the plus sign */
.btn.green{ background:#2f9e54 !important; color:#fff !important; border:1.5px solid #2f9e54 !important; border-radius:999px !important; font-weight:700 !important; }
.btn.green:hover{ background:#278545 !important; border-color:#278545 !important; color:#fff !important; }
.btn.green i{ color:#fff !important; }

/* selects render exactly like text inputs (strip the heavy native border) + clean chevron */
select{
  -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237a828f' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important; background-position:right 11px center !important; padding-right:30px !important;
}

/* Table headers: match the Schedule (the reference look) everywhere — navy + gold accent. */
thead th{ background:#1a1a2e !important; color:#eef2f8 !important; border-bottom:2px solid #e0b64a !important; }

/* Kill number-input spinner "tickers" on EVERY console page — Donovan hates the qty steppers. */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{ -webkit-appearance:none !important; margin:0 !important; }
input[type=number]{ -moz-appearance:textfield !important; appearance:textfield !important; }

/* ============================================================
   PREMIUM PASS (global) — real design-system fonts + elevated tables + soft tiles,
   so nothing reads "default template". Figtree = body, Outfit = headings (both already
   loaded via theme.css). Applied everywhere via polish.css.
   ============================================================ */
body, input, select, textarea, button, .btn, td, th, .nm, .sub, .status{
  font-family:'Figtree', -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}
h1, h2, h3, .hd, .xn, .wm, .num.big{ font-family:'Outfit', 'Figtree', sans-serif !important; letter-spacing:-.3px; }

/* Tables — soft elevation, roomier rows, hover, subtle zebra, tabular numbers */
table{ border:1px solid #e6e9f0 !important; border-radius:12px !important; overflow:hidden;
  box-shadow:0 1px 2px rgba(16,24,40,.05), 0 4px 12px rgba(16,24,40,.05) !important; }
thead th{ padding:11px 14px !important; font-size:11px !important; letter-spacing:.6px !important; }
tbody td{ padding:11px 14px !important; border-bottom:1px solid #eef1f5 !important; }
tbody tr:last-child td{ border-bottom:0 !important; }
tbody tr:hover td{ background:#f7f9fc !important; }
td.num, td.r, th.r, td.money, .num, .money input{ font-variant-numeric:tabular-nums; }

/* Tiles / cards / panels — soft elevation instead of a flat hairline */
.card, .panel, .step, .shot, .tile, .metric, .who, .intro, .bar{
  box-shadow:0 1px 2px rgba(16,24,40,.04), 0 6px 16px rgba(16,24,40,.05) !important;
}

/* Print keeps it flat — no shadows/rounding on paper */
@media print{
  table{ box-shadow:none !important; border-radius:0 !important; }
  .card, .panel, .step, .shot, .tile{ box-shadow:none !important; }
}

/* Every page's content anchors TOP-LEFT — no auto-centering / offset.
   (Pages that used `margin:0 auto` were floating content to the middle.) */
.wrap, .container, .page, .page-wrap, .content, .content-wrap, .app, .app-wrap, .shell-main, .inner, .main-inner{
  margin-left:0 !important; margin-right:0 !important;
}
