.card { background:#0f1f33; border:1px solid #1c3757; border-radius:1rem; box-shadow:0 4px 16px rgba(0,0,0,0.25); transition: border-color .15s, transform .15s, box-shadow .15s; }
a.card:hover, button.card:hover { border-color: rgba(224,165,44,0.35); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.35); }

.app-bg {
  background:
    radial-gradient(circle at 10% 0%, rgba(224,165,44,0.10) 0%, transparent 35%),
    radial-gradient(circle at 90% 15%, rgba(45,212,191,0.08) 0%, transparent 30%),
    radial-gradient(circle at 50% 100%, rgba(139,92,246,0.06) 0%, transparent 40%),
    #0a1420;
}

.btn-gold {
  background-image: linear-gradient(135deg,#f5d488 0%,#e0a52c 50%,#a8750f 100%);
  color:#0a1420; font-weight:800; padding:0.65rem 1.35rem; border-radius:0.85rem;
  transition: filter .15s, transform .1s, box-shadow .15s; display:inline-flex; align-items:center; gap:.4rem; cursor:pointer; border:none;
  box-shadow: 0 4px 14px rgba(224,165,44,0.25);
}
.btn-gold:hover { filter:brightness(1.1); box-shadow: 0 6px 20px rgba(224,165,44,0.4); transform: translateY(-1px); }
.btn-gold:active { transform: scale(0.98); }
.btn-gold:disabled { opacity:.5; cursor:not-allowed; box-shadow:none; transform:none; }

.btn-outline {
  border:1.5px solid rgba(224,165,44,0.6); color:#f0c352; font-weight:700; padding:0.65rem 1.35rem; border-radius:0.85rem;
  background:transparent; cursor:pointer; display:inline-flex; align-items:center; gap:.4rem; transition: background .15s, border-color .15s;
}
.btn-outline:hover { background: rgba(224,165,44,0.12); border-color: rgba(224,165,44,0.9); }

.input-field {
  width:100%; background:#0a1420; border:1.5px solid #1c3757; border-radius:0.7rem; padding:0.6rem 0.85rem;
  color:#fff; font-size:0.9rem; transition: border-color .15s;
}
.input-field::placeholder { color: rgba(255,255,255,0.3); }
.input-field:focus { outline:none; box-shadow:0 0 0 3px rgba(224,165,44,0.35); border-color: rgba(224,165,44,0.7); }

.label-field { display:block; font-size:0.7rem; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; color: rgba(255,255,255,0.5); margin-bottom:0.375rem; }

.pill { display:inline-flex; align-items:center; gap:4px; padding:5px 11px; border-radius:9999px; font-size:11px; font-weight:700; }

.section-title { font-family:'Anton',Impact,sans-serif; letter-spacing:0.02em; font-size:1.6rem; color:#fff; text-shadow: 0 2px 12px rgba(224,165,44,0.15); }

.nav-item { display:flex; align-items:center; gap:12px; padding:11px 13px; border-radius:0.85rem; font-size:14.5px; font-weight:800; color:rgba(255,255,255,0.65); cursor:pointer; border:1px solid transparent; text-decoration:none; transition: background .15s, color .15s, transform .1s; }
.nav-item:hover { background:#0f1f33; color:#fff; transform: translateX(2px); }
.nav-item.active { background:linear-gradient(135deg, rgba(224,165,44,0.18), rgba(224,165,44,0.08)); color:#f0c352; border-color:rgba(224,165,44,0.35); box-shadow: inset 0 0 0 1px rgba(224,165,44,0.15); }

.bg-gold-gradient { background-image: linear-gradient(135deg,#f5d488 0%,#e0a52c 50%,#a8750f 100%); }

@media print {
  .no-print { display: none !important; }
  body { background: white !important; }
  .print-page { box-shadow: none !important; border: none !important; break-inside: avoid; }
  @page { margin: 0.4in; }
}

/* Admin "Print this page": readable black-on-white output of any screen */
@media print {
  body.print-all, body.print-all .app-bg { background: #fff !important; }
  body.print-all * { color: #111 !important; background: transparent !important; box-shadow: none !important; text-shadow: none !important; border-color: #bbb !important; }
  body.print-all main, body.print-all #root, body.print-all .min-h-screen { height: auto !important; min-height: 0 !important; overflow: visible !important; }
  body.print-all [style*="overflow"], body.print-all .overflow-y-auto { max-height: none !important; overflow: visible !important; }
  body.print-all .card { border: 1px solid #ccc !important; break-inside: avoid; }
  body.print-all .print-track { break-before: page; }
  body.print-all button, body.print-all select, body.print-all .pill + button { display: none; }
  body.print-all input, body.print-all textarea { border: 1px solid #ccc !important; }
  body.print-all .pc-keep button { display: inline-block; }
}
