@import url('/wp-content/plugins/photorace/photorace-ui/css/fonts.css?v=20260222a');
@import url('/wp-content/plugins/photorace/photorace-ui/modais/auth-modal.css?v=20260220l');

:root {
  --bg: #000000;
  --surface: #101114;
  --surface-2: #17181c;
  --line: #202224;
  --text: #f6f6f9;
  --muted: #a7aab3;
  --title-dark: #202224;
  --text-dark: #5c5f66;
  --brand: #d52b31;
  --brand-hover: #c4272d;
  --danger: #b42318;
  --success: #067647;
  --ring: rgba(213, 43, 49, 0.28);
  --radius-sm: 12px;
  --radius: 16px;
  --radius-lg: 20px;
  --shadow: 0 16px 36px rgba(0, 0, 0, 0.28);
  --font-display: "Special Gothic Expanded One", "Arial Black", "Arial", sans-serif;
  --font-body: "Zalando Sans Expanded", "Helvetica Neue", "Arial", sans-serif;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }

body {
  margin: 0;
  font-family: var(--font-body);
  color: var(--text);
  background: var(--bg);
  min-height: 100vh;
}

h1,h2,h3,h4,h5,h6,p,a,span,label,button,input,select,small {
  text-box: trim-both cap alphabetic;
  -webkit-font-smoothing: antialiased;
}

h1,h2,h3,h4,h5,h6,.pr-btn,.pr-brand {
  font-family: var(--font-display);
  text-transform: uppercase;
}

a { color: inherit; text-decoration: none; transition: filter .2s ease, color .2s ease; }
button { transition: filter .2s ease, background-color .2s ease; }

.pr-page {
  width: min(1288px, calc(100% - 2rem));
  margin: 0 auto;
  padding: 1.5rem 0 2.5rem;
}

.pr-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.2rem;
  padding: .85rem 0;
  border-bottom: 1px solid var(--line);
}

.pr-brand {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: var(--text);
  letter-spacing: 0.02em;
  font-size: 1.06rem;
}

.pr-brand-logo {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.pr-nav-links {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.pr-chip {
  padding: 0.5rem 0.86rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--line);
  color: var(--text);
  font-size: .78rem;
}

.pr-chip:hover {
  filter: brightness(.92);
}

.pr-panel {
  background: var(--surface);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border: 1px solid var(--line);
}

.pr-btn {
  border: 0;
  border-radius: var(--radius-sm);
  padding: 0.75rem 1rem;
  font: inherit;
  line-height: 1.5;
  letter-spacing: .01em;
  cursor: pointer;
}

.pr-btn:disabled { opacity: 0.65; cursor: not-allowed; }

.pr-btn-primary {
  background: var(--brand);
  color: #fff;
}

.pr-btn-secondary {
  background: var(--surface-2);
  color: #fff;
  border: 1px solid #2b2d30;
}

.pr-btn-primary:hover,
.pr-btn-secondary:hover {
  filter: brightness(.92);
}

.pr-input,
.pr-select {
  width: 100%;
  padding: 0.78rem 0.9rem;
  border-radius: var(--radius-sm);
  border: 1.5px solid #dddde3;
  font: inherit;
  background: #fcfcfc;
  color: #202224;
}

.pr-input:focus,
.pr-select:focus {
  outline: 3px solid var(--ring);
  border-color: #f3a1a4;
}

.pr-form-row { margin-bottom: 0.85rem; }
.pr-label { display: block; margin-bottom: 0.35rem; color: var(--text); font-size: .92rem; }
.pr-muted { color: var(--muted); }

.pr-loader {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  gap: 0.65rem;
  background: rgba(18, 24, 38, 0.28);
  color: #fff;
  z-index: 1000;
}

.pr-spinner {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 3px solid rgba(255, 255, 255, 0.4);
  border-top-color: #fff;
  animation: spin 0.9s linear infinite;
}

@keyframes spin { to { transform: rotate(360deg); } }

.pr-toast {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 1100;
  padding: 0.8rem 1rem;
  border-radius: var(--radius-sm);
  color: #fff;
  box-shadow: var(--shadow);
}

.pr-toast-info { background: #344054; }
.pr-toast-success { background: var(--success); }
.pr-toast-error { background: var(--danger); }

.pr-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
}

.pr-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18, 24, 38, 0.5);
}

.pr-modal-panel {
  position: relative;
  width: min(760px, calc(100% - 2rem));
  max-height: 86vh;
  overflow: auto;
  margin: 7vh auto 0;
  background: #0f1012;
  border: 1px solid var(--line);
  color: var(--text);
  border-radius: var(--radius-lg);
  padding: 1rem;
}

.pr-modal-close {
  position: sticky;
  top: 0;
  margin-left: auto;
  display: block;
  border: 0;
  background: transparent;
  font-size: 1.4rem;
  cursor: pointer;
}

@media (max-width: 800px) {
  .pr-page { width: min(320vw, calc(100% - 5.12vw)); }
  .pr-nav { padding: 2.9867vw 0; }
}
