@font-face {
  font-family: 'DoDavidGothic';
  src: url('/fonts/DoDavidGothicRegular-7BEz4.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

:root {
  --brand-gold: #a08860; /* darker muted gold */
  --brand-gold-weak: #c4a574; /* muted lighter gold */
  --brand-gold-rgb: 160,136,96; /* for rgba() uses */
  --brand-gold-08: rgba(160,136,96,0.08);
  --brand-gold-12: rgba(160,136,96,0.12);
  --brand-gold-14: rgba(160,136,96,0.14);
  --brand-gold-18: rgba(160,136,96,0.18);
}

/* Shared base styles */
* {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

html {
  scroll-behavior: smooth;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  width: 100vw;
  margin: 0;
  padding: 0;
  font-family: "Roboto", sans-serif;
  background: transparent;
  background-image: url(/images/ui_bg2.jpg);
  background-size: 100% 100%;
  overflow-x: hidden;
  text-align: center;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 1);
}

/* Force table elements to display properly */
table {
  display: table !important;
}

thead {
  display: table-header-group !important;
}

tbody {
  display: table-row-group !important;
}

tr {
  display: table-row !important;
}

th, td {
  display: table-cell !important;
}

a {
  color: #5865f2;
}

a:hover {
  color: #818aea;
}

a:visted {
  color: #5865f2;
}

/* Custom scrollbars */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #0a0604;
  border-left: 1px solid #1a0f08;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #3d2815 0%, #2a1810 100%);
  border-radius: 6px;
  border: 1px solid #1a0f08;
}

::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #4d3520 0%, #3d2815 100%);
  border-color: #5a3f29;
}

/* Firefox scrollbar */
* {
  scrollbar-width: thin;
  scrollbar-color: #2a1810 #0a0604;
}

/* Custom Dialog Styles */
.dialog-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 9999;
  /* Removed blur for clarity */
  backdrop-filter: none;
}

.dialog-box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: linear-gradient(135deg, #2a1810 0%, #1a0f08 100%);
  border: 2px solid #8b6f47;
  border-radius: 12px;
  padding: 24px;
  min-width: 320px;
  max-width: 500px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  color: #e8dcc6;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

.dialog-title {
  font-family: 'DoDavidGothic', serif;
  font-size: 1.4em;
  font-weight: 600;
  margin-bottom: 16px;
  text-align: center;
  border-bottom: 1px solid #8b6f47;
  padding-bottom: 12px;
  background: linear-gradient(45deg, var(--brand-gold) 0%, var(--brand-gold-weak) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.dialog-message {
  font-size: 1.1em;
  line-height: 1.5;
  margin-bottom: 24px;
  text-align: center;
  color: #e8dcc6;
}

.dialog-buttons {
  display: flex;
  justify-content: center;
  gap: 12px;
}

.dialog-button {
  padding: 10px 20px;
  border: none;
  border-radius: 6px;
  font-size: 1em;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  min-width: 80px;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

/* Default button style: clean gradient */
.dialog-button, .btn, .enter-button, button.btn, a.btn {
  background: linear-gradient(135deg, #8b7355 0%, #a08860 50%, #8b7355 100%);
  color: #f5f0e8;
  border: 1px solid rgba(139,115,85,0.8);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255,255,255,0.1);
  font-weight: 600;
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
  padding: 10px 20px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.25s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.dialog-button:hover, .btn:hover, .enter-button:hover, button.btn:hover, a.btn:hover {
  background: linear-gradient(135deg, #9d8265 0%, #b09870 50%, #9d8265 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.15);
  border-color: rgba(160,136,96,0.9);
}

.dialog-button:active, .btn:active, .enter-button:active, button.btn:active, a.btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(0,0,0,0.4), inset 0 1px 3px rgba(0,0,0,0.3);
}

.dialog-button[disabled], .enter-button[disabled], .btn[disabled], button.btn[disabled], a.btn[disabled] {
  filter: grayscale(100%) opacity(0.5);
  cursor: not-allowed;
  transform: none !important;
}

.dialog-button.confirm {
  background: linear-gradient(135deg, #b71c1c 0%, #d32f2f 50%, #b71c1c 100%);
  color: white;
  border: 1px solid rgba(183,28,28,0.8);
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

.dialog-button.confirm:hover {
  background: linear-gradient(135deg, #d32f2f 0%, #f44336 50%, #d32f2f 100%);
  box-shadow: 0 6px 16px rgba(244, 67, 54, 0.5);
  transform: translateY(-2px);
  border-color: rgba(244,67,54,0.9);
}

.dialog-button.cancel {
  background: linear-gradient(135deg, #5a3a25 0%, #6b4423 50%, #5a3a25 100%);
  color: #e8dcc6;
  border: 1px solid rgba(90, 58, 37, 0.8);
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

.dialog-button.cancel:hover {
  background: linear-gradient(135deg, #6b4423 0%, #8b6f47 50%, #6b4423 100%);
  box-shadow: 0 6px 16px rgba(107, 68, 35, 0.5);
  transform: translateY(-2px);
  border-color: rgba(107, 68, 35, 0.9);
}

.dialog-button.alert {
  background: linear-gradient(135deg, #5a3a25 0%, #6b4423 50%, #5a3a25 100%);
  color: #e8dcc6;
  border: 1px solid rgba(90, 58, 37, 0.8);
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

.dialog-button.alert:hover {
  background: linear-gradient(135deg, #6b4423 0%, #8b6f47 50%, #6b4423 100%);
  box-shadow: 0 6px 16px rgba(107, 68, 35, 0.5);
  transform: translateY(-2px);
  border-color: rgba(107, 68, 35, 0.9);
}

