:root {
  --primary: #003D79;
  --primary-light: #0055A4;
  --secondary: #FFD700;
  --background: #f8f9fa;
  --card: #ffffff;
  --text: #333333;
  --muted: #6c757d;
  --border: #dee2e6;
  --success: #28a745;
  --warning: #ffc107;
  --danger: #dc3545;
  --header-bg: #FFF9E6;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: var(--background);
  color: var(--text);
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.no-select {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

.watermark {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  font-size: 2.5rem; /* Reduzi um pouco para caber melhor as 3 linhas */
  color: rgba(0, 61, 121, 0.08);
  pointer-events: none;
  z-index: 9999;
  font-weight: bold;
  white-space: pre-line; /* ✅ PERMITE QUE O <br> FUNCIONE */
  text-align: center;    /* ✅ CENTRALIZA AS 3 LINHAS */
  user-select: none;
  display: none;
}

.watermark.active { display: block; }

.hidden { display: none !important; }

.loading { text-align: center; padding: 2rem; color: var(--muted); }

.error {
  color: var(--danger);
  padding: 1rem;
  background: rgba(220,53,69,0.1);
  border-radius: 6px;
  margin: 1rem 0;
}

.placeholder-text { text-align: center; color: var(--muted); }

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes modalSlideIn {
  from { opacity: 0; transform: translateY(-20px); }
  to { opacity: 1; transform: translateY(0); }
}