/**
 * Palco Autoral — Design System
 * Identidade vetorial Sarau Brasilis: Dourado, Esmeralda, Azul Oceano, Grafite.
 * Tipografia: Outfit (títulos) + Plus Jakarta Sans (corpo). Mobile-first.
 */

:root {
	--pa-gold: #C59B27;
	--pa-gold-light: #E0BA43;
	--pa-gold-dark: #A8811A;
	--pa-emerald: #1F7A5C;
	--pa-emerald-dark: #12543E;
	--pa-ocean: #2B7A8C;
	--pa-ocean-light: #3D9BB0;
	--pa-dark: #0F171E;
	--pa-dark-card: rgba(23, 33, 43, 0.88);
	--pa-light-card: #FFFFFF;
	--pa-text: #F4F6F8;
	--pa-text-muted: #94A3B8;
	--pa-border-glass: rgba(197, 155, 39, 0.25);
	--pa-danger: #E5484D;
	--pa-danger-dark: #A8262B;
	--pa-info: #2B7A8C;
	--pa-radius-lg: 16px;
	--pa-radius-md: 12px;
	--pa-radius-sm: 8px;
	--pa-font-heading: 'Outfit', sans-serif;
	--pa-font-body: 'Plus Jakarta Sans', sans-serif;
	--pa-shadow-glow: 0 8px 32px rgba(197, 155, 39, 0.18);
	--pa-shadow-card: 0 4px 20px rgba(0, 0, 0, 0.35);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: var(--pa-font-body);
	background: radial-gradient(circle at top right, #172635 0%, var(--pa-dark) 55%);
	background-attachment: fixed;
	color: var(--pa-text);
	line-height: 1.6;
	min-height: 100vh;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--pa-gold-light);
	text-decoration: none;
	transition: color 0.2s ease;
}

a:hover {
	color: var(--pa-gold-light);
	text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--pa-font-heading);
	line-height: 1.2;
	margin: 0 0 0.5em;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.pa-skip-link {
	position: absolute;
	left: -999px;
	top: 8px;
	z-index: 9999;
	background: var(--pa-gold);
	color: #000;
	padding: 10px 16px;
	border-radius: var(--pa-radius-sm);
	font-weight: 700;
}

.pa-skip-link:focus {
	left: 8px;
}

.pa-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

/* ============ BOTÕES ============ */
.pa-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 50px;
	padding: 12px 26px;
	border: 1px solid transparent;
	border-radius: var(--pa-radius-md);
	font-family: var(--pa-font-heading);
	font-weight: 700;
	font-size: 1rem;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	text-decoration: none !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.pa-btn-gold {
	background: linear-gradient(135deg, var(--pa-gold), var(--pa-gold-dark));
	color: #000;
	box-shadow: 0 4px 15px rgba(197, 155, 39, 0.3);
}

.pa-btn-gold:hover {
	transform: translateY(-2px);
	background: linear-gradient(135deg, var(--pa-gold-light), var(--pa-gold));
	box-shadow: 0 8px 25px rgba(197, 155, 39, 0.5);
	color: #000;
}

.pa-btn-emerald {
	background: linear-gradient(135deg, var(--pa-emerald), var(--pa-emerald-dark));
	color: #FFF;
	box-shadow: 0 4px 15px rgba(31, 122, 92, 0.3);
}

.pa-btn-emerald:hover {
	transform: translateY(-2px);
	background: linear-gradient(135deg, #269671, var(--pa-emerald));
	color: #FFF;
}

.pa-btn-ghost {
	background: rgba(255, 255, 255, 0.06);
	border-color: var(--pa-border-glass);
	color: var(--pa-text);
}

.pa-btn-ghost:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #FFF;
}

.pa-btn-danger {
	background: linear-gradient(135deg, var(--pa-danger), var(--pa-danger-dark));
	color: #FFF;
}

.pa-btn-sm {
	min-height: 38px;
	padding: 8px 16px;
	font-size: 0.85rem;
}

.pa-btn-lg {
	min-height: 58px;
	padding: 14px 36px;
	font-size: 1.15rem;
}

.pa-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
	transform: none;
}

/* ============ HEADER ============ */
.pa-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(15, 23, 30, 0.92);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 72px;
	gap: 16px;
}

.pa-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	text-decoration: none !important;
}

.pa-logo-mark {
	width: 34px;
	height: 34px;
	filter: drop-shadow(0 0 12px rgba(197, 155, 39, 0.35));
}

.pa-logo-text {
	font-family: var(--pa-font-heading);
	font-weight: 800;
	font-size: 1.4rem;
	letter-spacing: 1px;
	color: #FFF;
	text-transform: uppercase;
}

.pa-logo-text em {
	font-style: normal;
	color: var(--pa-gold-light);
}

.pa-hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	padding: 10px;
	background: transparent;
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-sm);
	cursor: pointer;
}

.pa-hamburger span {
	display: block;
	height: 2px;
	width: 100%;
	background: var(--pa-gold-light);
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.pa-hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.pa-hamburger.is-open span:nth-child(2) { opacity: 0; }
.pa-hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.pa-nav {
	display: flex;
	align-items: center;
	gap: 24px;
}

.pa-menu {
	display: flex;
	list-style: none;
	gap: 4px;
	margin: 0;
	padding: 0;
}

.pa-menu li {
	position: relative;
}

.pa-menu a {
	display: block;
	padding: 10px 14px;
	border-radius: var(--pa-radius-sm);
	color: var(--pa-text);
	font-weight: 600;
	font-size: 0.95rem;
	text-decoration: none;
}

.pa-menu a:hover {
	background: rgba(197, 155, 39, 0.12);
	color: var(--pa-gold-light);
}

.pa-nav-account {
	display: flex;
	align-items: center;
	gap: 10px;
}

/* ============ HERO ============ */
.pa-hero {
	position: relative;
	min-height: 76vh;
	display: flex;
	align-items: center;
	text-align: center;
	overflow: hidden;
	background:
		radial-gradient(circle at 20% 20%, rgba(43, 122, 140, 0.35), transparent 45%),
		radial-gradient(circle at 80% 80%, rgba(197, 155, 39, 0.25), transparent 45%),
		linear-gradient(160deg, #0F171E 0%, #13232E 100%);
}

.pa-hero-overlay {
	position: absolute;
	inset: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 5 L85 25 L85 75 L50 95 L15 75 L15 25 Z' fill='none' stroke='%23C59B27' stroke-opacity='0.08' stroke-width='2'/%3E%3C/svg%3E") center/420px repeat;
	pointer-events: none;
}

.pa-hero-content {
	position: relative;
	z-index: 1;
	padding: 80px 20px;
}

.pa-hero-eyebrow {
	display: inline-block;
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	font-size: 0.85rem;
	color: var(--pa-ocean-light);
	margin-bottom: 16px;
}

.pa-hero-title {
	font-size: clamp(3rem, 9vw, 6.5rem);
	font-weight: 800;
	text-transform: uppercase;
	color: #FFF;
	letter-spacing: 2px;
	text-shadow: 0 0 60px rgba(197, 155, 39, 0.35);
}

.pa-hero-title em {
	font-style: normal;
	color: var(--pa-gold-light);
}

.pa-hero-subtitle {
	max-width: 640px;
	margin: 16px auto 32px;
	font-size: 1.2rem;
	color: var(--pa-text-muted);
}

.pa-hero-actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
}

/* ============ SEÇÕES ============ */
.pa-section {
	padding: 72px 0;
}

.pa-section-dark {
	background: rgba(9, 14, 19, 0.6);
	border-top: 1px solid var(--pa-border-glass);
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-section-head {
	max-width: 640px;
	margin-bottom: 40px;
}

.pa-section-head p {
	color: var(--pa-text-muted);
	margin: 0;
}

.pa-section-tag {
	display: inline-block;
	font-family: var(--pa-font-heading);
	font-weight: 700;
	font-size: 0.8rem;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--pa-gold-light);
	background: rgba(197, 155, 39, 0.12);
	border: 1px solid var(--pa-border-glass);
	padding: 6px 14px;
	border-radius: 40px;
	margin-bottom: 14px;
}

.pa-section-title {
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	font-weight: 800;
	color: #FFF;
}

/* ============ FAIXA EDIÇÃO / COUNTDOWN ============ */
.pa-edition-strip {
	background: linear-gradient(135deg, rgba(197, 155, 39, 0.14), rgba(31, 122, 92, 0.14));
	border-bottom: 1px solid var(--pa-border-glass);
	padding: 40px 0;
}

.pa-edition-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 24px;
}

.pa-edition-title {
	font-size: 1.7rem;
	font-weight: 800;
	color: var(--pa-gold-light);
	margin: 0;
}

.pa-edition-local {
	color: var(--pa-text-muted);
	margin: 4px 0 0;
}

.pa-countdown {
	display: flex;
	gap: 14px;
}

.pa-countdown-item {
	text-align: center;
	min-width: 74px;
	background: var(--pa-dark-card);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-md);
	padding: 12px 8px;
}

.pa-countdown-item span {
	display: block;
	font-family: var(--pa-font-heading);
	font-weight: 800;
	font-size: 1.7rem;
	color: var(--pa-gold-light);
}

.pa-countdown-item small {
	color: var(--pa-text-muted);
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}

/* ============ SOBRE ============ */
.pa-about {
	display: grid;
	grid-template-columns: 1.4fr 1fr;
	gap: 48px;
	align-items: center;
}

.pa-about-text p {
	color: var(--pa-text-muted);
}

.pa-about-stats {
	display: grid;
	gap: 16px;
}

.pa-stat {
	background: var(--pa-dark-card);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-lg);
	padding: 24px;
	text-align: center;
}

.pa-stat strong {
	display: block;
	font-family: var(--pa-font-heading);
	font-size: 1.9rem;
	font-weight: 800;
	color: var(--pa-gold-light);
}

.pa-stat span {
	color: var(--pa-text-muted);
	font-size: 0.9rem;
}

/* ============ CARDS / BADGES ============ */
.pa-card {
	background: var(--pa-dark-card);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-lg);
	padding: 24px;
	backdrop-filter: blur(16px);
	box-shadow: var(--pa-shadow-glow);
}

.pa-badge {
	display: inline-block;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 4px 12px;
	border-radius: 40px;
	background: rgba(148, 163, 184, 0.15);
	color: var(--pa-text-muted);
}

.pa-badge-live {
	background: rgba(229, 72, 77, 0.18);
	color: #FF8A8E;
	border: 1px solid rgba(229, 72, 77, 0.4);
}

.pa-badge-wait {
	background: rgba(197, 155, 39, 0.15);
	color: var(--pa-gold-light);
}

.pa-badge-status-aprovado, .pa-badge-status-no_palco {
	background: rgba(31, 122, 92, 0.2);
	color: #5FD3A8;
}

.pa-badge-status-reprovado {
	background: rgba(229, 72, 77, 0.18);
	color: #FF8A8E;
}

.pa-badge-status-pendente, .pa-badge-status-correcao {
	background: rgba(197, 155, 39, 0.15);
	color: var(--pa-gold-light);
}

.pa-badge-status-avaliado {
	background: rgba(43, 122, 140, 0.2);
	color: var(--pa-ocean-light);
}

.pa-badge-curadoria {
	background: rgba(43, 122, 140, 0.2);
	color: var(--pa-ocean-light);
}

.pa-badge-relampago {
	background: rgba(197, 155, 39, 0.18);
	color: var(--pa-gold-light);
}

/* ============ ALERTS / AVISOS ============ */
.pa-alert {
	border-radius: var(--pa-radius-md);
	padding: 16px 20px;
	margin: 16px 0;
	border: 1px solid;
	font-size: 0.95rem;
}

.pa-alert-warn {
	background: rgba(197, 155, 39, 0.12);
	border-color: var(--pa-gold);
	color: var(--pa-gold-light);
}

.pa-alert-gold {
	background: rgba(197, 155, 39, 0.16);
	border-color: var(--pa-gold-light);
	color: var(--pa-gold-light);
}

.pa-alert-info {
	background: rgba(43, 122, 140, 0.14);
	border-color: var(--pa-ocean);
	color: var(--pa-ocean-light);
}

.pa-hint {
	font-size: 0.88rem;
	color: var(--pa-text-muted);
	margin: 4px 0;
}

.pa-empty {
	text-align: center;
	color: var(--pa-text-muted);
	padding: 32px;
	font-size: 1.05rem;
}

.pa-divider {
	border: 0;
	border-top: 1px solid var(--pa-border-glass);
	margin: 22px 0;
}

/* ============ GALERIA ============ */
.pa-gallery-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 24px;
}

.pa-gallery-card {
	background: var(--pa-dark-card);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-lg);
	overflow: hidden;
	box-shadow: var(--pa-shadow-card);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pa-gallery-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.5);
}

.pa-gallery-media {
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.pa-gallery-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pa-gallery-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 3rem;
	background: linear-gradient(135deg, #172635, #0F171E);
}

.pa-gallery-play {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	background: rgba(197, 155, 39, 0.9);
	color: #000;
	border-radius: 50%;
	text-decoration: none;
	transition: transform 0.2s ease;
}

.pa-gallery-play:hover {
	transform: scale(1.1);
	color: #000;
}

.pa-gallery-body {
	padding: 18px 20px 20px;
}

.pa-gallery-body h3 {
	font-size: 1.15rem;
	margin: 0 0 10px;
	color: #FFF;
}

.pa-gallery-thumbs {
	display: flex;
	gap: 8px;
	margin-top: 10px;
}

.pa-gallery-thumbs img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: var(--pa-radius-sm);
	border: 1px solid var(--pa-border-glass);
	cursor: pointer;
}

/* Lightbox */
.pa-lightbox {
	position: fixed;
	inset: 0;
	z-index: 200;
	background: rgba(0, 0, 0, 0.9);
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
}

.pa-lightbox.is-open {
	display: flex;
}

.pa-lightbox-content {
	position: relative;
	width: min(900px, 100%);
}

.pa-lightbox-close {
	position: absolute;
	top: -48px;
	right: 0;
	width: 42px;
	height: 42px;
	font-size: 1.5rem;
	background: var(--pa-gold);
	color: #000;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
}

.pa-lightbox-content iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	border-radius: var(--pa-radius-md);
	border: 0;
}

/* ============ VÍDEOS ============ */
.pa-video-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
	gap: 24px;
}

.pa-video-item iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	border-radius: var(--pa-radius-md);
	border: 1px solid var(--pa-border-glass);
}

/* ============ PATROCINADORES ============ */
.pa-section-sponsors {
	background: rgba(9, 14, 19, 0.6);
	border-top: 1px solid var(--pa-border-glass);
}

.pa-sponsors {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 28px;
}

.pa-sponsor {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	background: var(--pa-dark-card);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-lg);
	padding: 20px 28px;
	text-align: center;
}

.pa-sponsor img {
	max-height: 72px;
	width: auto;
	filter: grayscale(0.2);
}

.pa-sponsor-name {
	font-family: var(--pa-font-heading);
	font-weight: 700;
	color: #FFF;
}

.pa-sponsor small {
	color: var(--pa-text-muted);
}

/* ============ CTA FINAL ============ */
.pa-cta {
	text-align: center;
}

.pa-cta-inner {
	max-width: 640px;
}

.pa-cta h2 {
	font-size: clamp(1.6rem, 4vw, 2.4rem);
	color: #FFF;
}

.pa-cta p {
	color: var(--pa-text-muted);
	margin-bottom: 28px;
}

/* ============ FOOTER ============ */
.pa-footer {
	background: rgba(7, 11, 15, 0.95);
	border-top: 1px solid var(--pa-border-glass);
	margin-top: 60px;
}

.pa-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 40px;
	padding: 56px 20px 40px;
}

.pa-footer p {
	color: var(--pa-text-muted);
	font-size: 0.92rem;
}

.pa-footer-col h3 {
	font-size: 1rem;
	color: var(--pa-gold-light);
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 14px;
}

.pa-footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pa-footer-menu li {
	margin-bottom: 10px;
}

.pa-footer-menu a {
	color: var(--pa-text-muted);
	font-size: 0.92rem;
}

.pa-footer-menu a:hover {
	color: var(--pa-gold-light);
}

.pa-footer-bottom {
	border-top: 1px solid rgba(197, 155, 39, 0.15);
	padding: 20px 0;
	font-size: 0.85rem;
	color: var(--pa-text-muted);
}

.pa-footer-bottom .pa-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
}

/* ============ PÁGINAS ============ */
.pa-page {
	padding: 48px 20px 80px;
}

.pa-page-title {
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	font-weight: 800;
	color: #FFF;
	margin-bottom: 24px;
}

.pa-post-content {
	color: var(--pa-text-muted);
	line-height: 1.8;
}

/* ============ LINE-UP ============ */
.pa-lineup-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 24px;
}

.pa-lineup-card {
	overflow: hidden;
	padding: 0;
	transition: transform 0.25s ease;
}

.pa-lineup-card:hover {
	transform: translateY(-4px);
}

.pa-lineup-media {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}

.pa-lineup-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pa-lineup-body {
	padding: 18px 20px 22px;
}

.pa-lineup-song {
	font-size: 1.1rem;
	margin: 0 0 4px;
}

.pa-lineup-song a {
	color: #FFF;
}

.pa-lineup-artist {
	color: var(--pa-gold-light);
	font-weight: 600;
	margin: 0;
}

.pa-lineup-authors {
	color: var(--pa-text-muted);
}

/* ============ SINGLE ============ */
.pa-single-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 40px;
	align-items: start;
}

.pa-single-media img,
.pa-single-placeholder {
	border-radius: var(--pa-radius-lg);
	border: 1px solid var(--pa-border-glass);
	box-shadow: var(--pa-shadow-card);
}

.pa-single-title {
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	color: #FFF;
}

.pa-single-artist {
	color: var(--pa-gold-light);
	font-weight: 700;
	font-size: 1.15rem;
}

.pa-single-fields {
	margin: 24px 0;
}

.pa-single-fields div {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-single-fields dt {
	color: var(--pa-text-muted);
	font-weight: 600;
	font-size: 0.9rem;
}

.pa-single-fields dd {
	margin: 0;
	color: var(--pa-text);
}

.pa-single-social {
	margin-top: 20px;
}

/* ============ DASHBOARDS ============ */
.pa-dash {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 28px;
	align-items: start;
	padding: 40px 20px 80px;
}

.pa-dash-sidebar {
	position: sticky;
	top: 92px;
}

.pa-dash-user {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-avatar {
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--pa-gold), var(--pa-gold-dark));
	color: #000;
	font-family: var(--pa-font-heading);
	font-weight: 800;
	font-size: 1.2rem;
}

.pa-dash-user strong {
	display: block;
	font-size: 0.95rem;
}

.pa-dash-user small {
	color: var(--pa-text-muted);
	font-size: 0.75rem;
}

.pa-dash-nav {
	display: grid;
	gap: 4px;
	margin-bottom: 18px;
}

.pa-dash-nav a {
	display: block;
	padding: 10px 14px;
	border-radius: var(--pa-radius-sm);
	color: var(--pa-text);
	font-weight: 600;
	font-size: 0.92rem;
	text-decoration: none;
}

.pa-dash-nav a:hover {
	background: rgba(197, 155, 39, 0.12);
	color: var(--pa-gold-light);
}

.pa-dash-logout {
	width: 100%;
}

.pa-dash-head {
	margin-bottom: 28px;
}

.pa-dash-head h1 {
	font-size: 2rem;
	color: #FFF;
}

.pa-dash-head p {
	color: var(--pa-text-muted);
	margin: 0;
}

.pa-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 24px;
}

.pa-grid-admin {
	grid-template-columns: 1fr 1fr;
}

.pa-dash-block h2 {
	font-size: 1.25rem;
	color: var(--pa-gold-light);
	margin-bottom: 8px;
}

.pa-dash-block h3 {
	font-size: 1.05rem;
	color: #FFF;
}

.pa-dash-wide {
	grid-column: 1 / -1;
}

.pa-actions-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 16px 0;
}

/* Tabela */
.pa-table-wrap {
	overflow-x: auto;
}

.pa-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.pa-table th {
	text-align: left;
	font-family: var(--pa-font-heading);
	font-size: 0.78rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--pa-text-muted);
	padding: 10px 12px;
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-table td {
	padding: 12px;
	border-bottom: 1px solid rgba(197, 155, 39, 0.12);
	color: var(--pa-text);
}

.pa-table tr:hover td {
	background: rgba(255, 255, 255, 0.03);
}

/* Lista de status */
.pa-status-list {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}

.pa-status-list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 14px 0;
	border-bottom: 1px solid var(--pa-border-glass);
}

.pa-status-list strong {
	display: block;
	font-size: 1rem;
}

.pa-status-list small {
	color: var(--pa-text-muted);
}

/* ============ FORMULÁRIOS ============ */
.pa-form {
	display: grid;
	gap: 16px;
}

.pa-field {
	display: grid;
	gap: 6px;
}

.pa-field label {
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--pa-text);
}

.pa-field input[type="text"],
.pa-field input[type="email"],
.pa-field input[type="password"],
.pa-field input[type="url"],
.pa-field input[type="number"],
.pa-field input[type="date"],
.pa-field input[type="file"],
.pa-field select,
.pa-field textarea {
	width: 100%;
	min-height: 48px;
	padding: 10px 14px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-sm);
	color: var(--pa-text);
	font-family: var(--pa-font-body);
	font-size: 0.95rem;
}

.pa-field textarea {
	min-height: 90px;
	resize: vertical;
}

.pa-field input:focus,
.pa-field select:focus,
.pa-field textarea:focus {
	outline: none;
	border-color: var(--pa-gold);
	box-shadow: 0 0 0 3px rgba(197, 155, 39, 0.2);
}

.pa-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 0.88rem;
	color: var(--pa-text-muted);
	cursor: pointer;
}

.pa-check input {
	width: 18px;
	height: 18px;
	margin-top: 2px;
	accent-color: var(--pa-gold);
}

/* Estrelas curadoria */
.pa-star-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid rgba(197, 155, 39, 0.12);
}

.pa-star-row span {
	font-weight: 600;
	font-size: 0.95rem;
}

.pa-stars {
	display: inline-flex;
	gap: 4px;
}

.pa-star {
	background: none;
	border: 0;
	font-size: 1.7rem;
	color: #3A4654;
	cursor: pointer;
	padding: 0;
	line-height: 1;
	transition: color 0.15s ease, transform 0.15s ease;
}

.pa-star.is-active,
.pa-star:hover {
	color: var(--pa-gold-light);
	transform: scale(1.12);
}

/* Sliders júri */
.pa-rating-group {
	margin-bottom: 18px;
}

.pa-rating-label {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: 600;
	margin-bottom: 8px;
}

.pa-score-display {
	font-family: var(--pa-font-heading);
	font-weight: 800;
	font-size: 1.3rem;
	color: var(--pa-gold-light);
	background: rgba(197, 155, 39, 0.15);
	border: 1px solid var(--pa-gold);
	padding: 2px 14px;
	border-radius: var(--pa-radius-sm);
}

.pa-range {
	width: 100%;
	height: 12px;
	border-radius: 6px;
	background: #1A2733;
	appearance: none;
	-webkit-appearance: none;
}

.pa-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--pa-gold-light);
	border: 3px solid #FFF;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

/* Fila curadoria */
.pa-queue {
	display: grid;
	gap: 28px;
}

.pa-queue-item {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-lg);
	padding: 24px;
}

.pa-queue-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.pa-queue-head h3 {
	font-size: 1.3rem;
	color: #FFF;
	margin: 0;
}

.pa-queue-player iframe {
	width: 100%;
	max-width: 560px;
	aspect-ratio: 16 / 9;
	border-radius: var(--pa-radius-sm);
	border: 0;
	margin-bottom: 16px;
}

/* Jurado */
.pa-jurado-artist {
	display: flex;
	gap: 18px;
	align-items: center;
	margin-bottom: 20px;
}

.pa-jurado-photo {
	width: 84px;
	height: 84px;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid var(--pa-gold);
}

.pa-jurado-artist h2 {
	font-size: 1.5rem;
	margin: 6px 0 0;
	color: #FFF;
}

.pa-jurado-wait {
	text-align: center;
	padding: 40px 10px;
}

/* MC */
.pa-mc-artist {
	text-align: center;
}

.pa-mc-photo {
	border-radius: 50%;
	width: 130px;
	height: 130px;
	object-fit: cover;
	border: 3px solid var(--pa-gold);
	margin-bottom: 12px;
}

.pa-thermo {
	height: 22px;
	background: #1A2733;
	border-radius: 20px;
	overflow: hidden;
	border: 1px solid var(--pa-border-glass);
	margin: 16px 0 8px;
}

.pa-thermo-fill {
	height: 100%;
	background: linear-gradient(90deg, var(--pa-emerald), var(--pa-gold-light));
	transition: width 0.6s ease;
}

.pa-thermo-text {
	text-align: center;
	font-size: 1.05rem;
	margin: 0 0 8px;
}

.pa-mc-sponsors {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pa-mc-sponsors li {
	padding: 10px 0;
	border-bottom: 1px solid rgba(197, 155, 39, 0.12);
}

.pa-mc-sponsors small {
	display: block;
	color: var(--pa-text-muted);
}

/* ============ VOTAÇÃO POPULAR ============ */
.pa-votar {
	max-width: 640px;
}

.pa-votar-card {
	text-align: center;
	margin-bottom: 24px;
}

.pa-big-vote {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin: 20px 0;
}

.pa-vote-btn {
	min-height: 72px;
	background: rgba(255, 255, 255, 0.06);
	border: 2px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-md);
	color: var(--pa-text);
	font-family: var(--pa-font-heading);
	font-weight: 800;
	font-size: 1.6rem;
	cursor: pointer;
	transition: all 0.2s ease;
}

.pa-vote-btn.is-active {
	background: linear-gradient(135deg, var(--pa-gold), var(--pa-gold-dark));
	border-color: var(--pa-gold-light);
	color: #000;
	transform: scale(1.06);
}

/* ============ ACESSO ============ */
.pa-access-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	max-width: 900px;
	margin: 0 auto;
}

.pa-access-denied {
	text-align: center;
	max-width: 560px;
	margin: 40px auto;
	padding: 48px;
}

/* ============ SORTEIO ============ */
.pa-draw-result {
	list-style: none;
	padding: 0;
	margin: 16px 0 0;
}

.pa-draw-result li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px;
	background: rgba(197, 155, 39, 0.1);
	border: 1px solid var(--pa-border-glass);
	border-radius: var(--pa-radius-sm);
	margin-bottom: 8px;
	font-weight: 600;
}

/* ============ TOAST ============ */
.pa-toast {
	position: fixed;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--pa-emerald);
	color: #FFF;
	font-weight: 700;
	padding: 14px 28px;
	border-radius: 40px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
	display: none;
	z-index: 300;
	max-width: 90vw;
	text-align: center;
}

.pa-toast.is-error {
	background: var(--pa-danger);
}

/* ============ TELÃO ============ */
.pa-telao-body {
	background: #080D12;
	color: #FFF;
	margin: 0;
	padding: 0;
	overflow: hidden;
	width: 100vw;
	height: 100vh;
	font-family: var(--pa-font-heading);
}

.pa-telao {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100vh;
	padding: 40px 60px;
	box-sizing: border-box;
	background: radial-gradient(circle at center, #11202D 0%, #060A0E 100%);
}

.pa-telao-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 2px solid var(--pa-border-glass);
	padding-bottom: 20px;
}

.pa-telao-title {
	font-size: 2.5rem;
	font-weight: 800;
	color: var(--pa-gold-light);
	text-transform: uppercase;
	letter-spacing: 2px;
	margin: 0;
}

.pa-telao-sub {
	color: var(--pa-ocean-light);
	font-size: 1.1rem;
	font-weight: 600;
}

.pa-telao-live {
	font-family: var(--pa-font-heading);
	font-weight: 800;
	color: var(--pa-gold-light);
	background: rgba(197, 155, 39, 0.15);
	border: 1px solid var(--pa-gold);
	padding: 8px 22px;
	border-radius: 40px;
	font-size: 1rem;
	letter-spacing: 2px;
}

.pa-telao-artista {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: center;
	margin: 40px 0;
}

.pa-telao-img {
	width: 100%;
	max-height: 480px;
	object-fit: cover;
	border-radius: 24px;
	border: 3px solid var(--pa-gold);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.6);
}

.pa-telao-photo-fallback {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 6rem;
	background: #1A2633;
}

.pa-telao-info h2 {
	font-size: 3.5rem;
	font-weight: 800;
	margin: 0 0 12px;
}

.pa-telao-song {
	font-size: 2.2rem;
	color: var(--pa-ocean-light);
	font-weight: 600;
	margin-bottom: 24px;
}

.pa-telao-qr {
	background: #FFF;
	padding: 16px;
	border-radius: 16px;
	display: inline-block;
	text-align: center;
}

.pa-telao-qr img {
	width: 160px;
	height: 160px;
}

.pa-telao-qr p {
	color: #000;
	font-weight: 700;
	margin: 8px 0 0;
	font-size: 0.9rem;
}

.pa-telao-reveal {
	text-align: center;
	margin: auto;
	animation: pa-fade-up 1s ease;
}

.pa-telao-reveal-title {
	font-size: 2.6rem;
	color: var(--pa-gold-light);
	margin: 0 0 20px;
}

.pa-telao-reveal-name {
	font-size: 4.5rem;
	margin: 16px 0;
	text-transform: uppercase;
	text-shadow: 0 0 40px var(--pa-gold);
	color: #FFF;
}

.pa-telao-reveal-photo {
	max-width: 340px;
	border-radius: 20px;
	border: 3px solid var(--pa-gold);
	box-shadow: 0 0 60px rgba(197, 155, 39, 0.4);
}

.pa-telao-reveal-prize {
	font-size: 1.6rem;
	color: var(--pa-ocean-light);
	font-weight: 600;
}

.pa-telao-sponsors {
	text-align: center;
	margin: auto;
}

.pa-telao-sponsors-title {
	font-size: 2.6rem;
	color: var(--pa-gold-light);
}

.pa-telao-sponsors-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px;
	align-items: center;
	margin: 32px 0;
}

.pa-telao-sponsor-logo {
	max-height: 130px;
	width: auto;
	filter: drop-shadow(0 0 20px rgba(197, 155, 39, 0.3));
}

.pa-telao-sponsor-name {
	font-size: 2rem;
	color: #FFF;
}

.pa-telao-sponsors-sub {
	font-size: 1.2rem;
	color: var(--pa-text-muted);
}

.pa-telao-lineup {
	text-align: center;
	margin: auto;
	width: 100%;
}

.pa-telao-lineup-title {
	font-size: 2.6rem;
	color: var(--pa-gold-light);
	margin-bottom: 28px;
}

.pa-telao-lineup-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 18px;
}

.pa-telao-card {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--pa-border-glass);
	border-radius: 16px;
	padding: 14px;
}

.pa-telao-card-photo {
	width: 84px;
	height: 84px;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid var(--pa-gold);
	margin-bottom: 10px;
}

.pa-telao-card-fallback {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	background: #1A2633;
}

.pa-telao-card strong {
	display: block;
	font-size: 1rem;
}

.pa-telao-card small {
	color: var(--pa-text-muted);
}

.pa-telao-footer {
	display: flex;
	justify-content: space-between;
	border-top: 1px solid var(--pa-border-glass);
	padding-top: 16px;
	color: var(--pa-text-muted);
	font-size: 1rem;
	font-family: var(--pa-font-body);
}

@keyframes pa-fade-up {
	from { opacity: 0; transform: translateY(24px); }
	to { opacity: 1; transform: translateY(0); }
}

/* ============ RESPONSIVO ============ */
@media (max-width: 1024px) {
	.pa-footer-grid {
		grid-template-columns: 1fr 1fr;
	}

	.pa-about {
		grid-template-columns: 1fr;
	}

	.pa-single-grid {
		grid-template-columns: 1fr;
	}

	.pa-grid-admin {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 860px) {
	.pa-hamburger {
		display: flex;
	}

	.pa-nav {
		position: fixed;
		top: 72px;
		right: 0;
		left: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		background: rgba(15, 23, 30, 0.98);
		border-bottom: 1px solid var(--pa-border-glass);
		padding: 16px 20px;
		transform: translateY(-120%);
		transition: transform 0.3s ease;
		z-index: 99;
	}

	.pa-nav.is-open {
		transform: translateY(0);
	}

	.pa-menu {
		flex-direction: column;
		gap: 2px;
	}

	.pa-nav-account {
		margin-top: 14px;
	}

	.pa-dash {
		grid-template-columns: 1fr;
	}

	.pa-dash-sidebar {
		position: static;
	}

	.pa-telao {
		padding: 24px;
		overflow-y: auto;
		height: 100vh;
	}

	.pa-telao-artista {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.pa-telao-info h2 {
		font-size: 2.2rem;
	}

	.pa-telao-song {
		font-size: 1.5rem;
	}

	.pa-telao-title {
		font-size: 1.7rem;
	}

	.pa-telao-reveal-name {
		font-size: 2.4rem;
	}

	.pa-access-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.pa-footer-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.pa-countdown {
		gap: 8px;
	}

	.pa-countdown-item {
		min-width: 62px;
	}

	.pa-edition-inner {
		justify-content: center;
		text-align: center;
	}

	.pa-big-vote {
		grid-template-columns: repeat(2, 1fr);
	}

	.pa-queue-head {
		flex-direction: column;
	}
}
