/**
 * Estilos Oficiais do Sistema de Fichas de Rhaokar
 * Tema Dark Fantasy RPG, responsivo para celular (Mobile-First) e desktop.
 */

:root {
	--rhaokar-bg-dark: #141619;
	--rhaokar-bg-card: #1c2026;
	--rhaokar-bg-input: #121418;
	--rhaokar-gold: #ffd700;
	--rhaokar-gold-dark: #b8860b;
	--rhaokar-border: #38404d;
	--rhaokar-text: #e0e6ed;
	--rhaokar-text-muted: #9aa5b5;
	--rhaokar-danger: #ff4d4f;
	--rhaokar-success: #52c41a;
}

/* Container Geral da Área do Jogador */
.rhaokar-player-area-wrapper,
.rhaokar-system-selector-wrapper,
.rhaokar-builder-wrapper,
.rhaokar-guest-container,
.rhaokar-auth-container {
	background-color: var(--rhaokar-bg-dark);
	color: var(--rhaokar-text);
	border: 2px solid var(--rhaokar-gold-dark);
	border-radius: 10px;
	padding: 24px;
	margin: 20px auto 40px auto;
	max-width: 1200px;
	box-shadow: 0 10px 35px rgba(0, 0, 0, 0.85);
	font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	box-sizing: border-box;
}

/* Cabeçalho do Jogador */
.rhaokar-player-header {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-bottom: 2px solid var(--rhaokar-gold-dark);
	padding-bottom: 20px;
	margin-bottom: 20px;
	gap: 16px;
}

.rhaokar-player-profile {
	display: flex;
	align-items: center;
	gap: 16px;
}

.rhaokar-player-avatar img {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	border: 2px solid var(--rhaokar-gold);
	box-shadow: 0 0 12px rgba(255, 215, 0, 0.3);
}

.rhaokar-player-tag {
	font-size: 0.7rem;
	letter-spacing: 1px;
	color: var(--rhaokar-gold);
	font-weight: 700;
	text-transform: uppercase;
}

.rhaokar-player-name {
	margin: 2px 0;
	color: #ffffff;
	font-size: 1.5rem;
	font-weight: 700;
}

.rhaokar-player-email {
	font-size: 0.85rem;
	color: var(--rhaokar-text-muted);
}

.rhaokar-player-actions-top {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

/* Botões */
.rhaokar-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 8px 18px;
	font-size: 0.9rem;
	font-weight: 600;
	border-radius: 6px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.25s ease;
	border: 1px solid transparent;
}

.rhaokar-btn:hover {
	text-decoration: none;
	transform: translateY(-1px);
}

.rhaokar-btn-gold {
	background: linear-gradient(135deg, #ffd700 0%, #d4af37 100%);
	color: #000000 !important;
	border-color: #b8860b;
	font-weight: 700;
	box-shadow: 0 4px 12px rgba(255, 215, 0, 0.25);
}

.rhaokar-btn-gold:hover {
	background: #ffffff;
	color: #000000 !important;
	box-shadow: 0 6px 16px rgba(255, 215, 0, 0.4);
}

.rhaokar-btn-outline {
	background: rgba(255, 255, 255, 0.05);
	color: var(--rhaokar-gold) !important;
	border-color: var(--rhaokar-gold-dark);
}

.rhaokar-btn-outline:hover {
	background: var(--rhaokar-gold-dark);
	color: #000000 !important;
}

.rhaokar-btn-danger-outline {
	background: transparent;
	color: var(--rhaokar-danger) !important;
	border-color: var(--rhaokar-danger);
}

.rhaokar-btn-danger-outline:hover {
	background: var(--rhaokar-danger);
	color: #ffffff !important;
}

.rhaokar-btn-block {
	display: flex;
	width: 100%;
}

.rhaokar-btn-sm {
	padding: 5px 12px;
	font-size: 0.8rem;
}

.rhaokar-btn-link {
	color: var(--rhaokar-gold);
	text-decoration: none;
	font-weight: 600;
}

.rhaokar-btn-link:hover {
	text-decoration: underline;
}

/* Estatísticas Rápidas */
.rhaokar-stats-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
	margin-bottom: 25px;
}

.rhaokar-stat-card {
	background: var(--rhaokar-bg-card);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	padding: 16px;
	text-align: center;
}

.rhaokar-stat-num {
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--rhaokar-gold);
}

.rhaokar-stat-label {
	font-size: 0.8rem;
	color: var(--rhaokar-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Grade de Personagens */
.rhaokar-section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 18px;
}

.rhaokar-section-header h3 {
	margin: 0;
	color: var(--rhaokar-gold);
	font-size: 1.3rem;
}

.rhaokar-character-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
	gap: 20px;
}

.rhaokar-char-card {
	background: var(--rhaokar-bg-card);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.25s ease;
	display: flex;
	flex-direction: column;
}

.rhaokar-char-card:hover {
	border-color: var(--rhaokar-gold);
	transform: translateY(-4px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
}

.rhaokar-char-card-img {
	height: 160px;
	background-size: cover;
	background-position: center;
	position: relative;
	background-color: #0b0d10;
}

.rhaokar-char-card-badges {
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	display: flex;
	justify-content: space-between;
}

.rhaokar-badge-system {
	font-size: 0.72rem;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 4px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	text-transform: uppercase;
}

.rhaokar-badge-status {
	font-size: 0.72rem;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 4px;
	text-transform: uppercase;
}

.rhaokar-status-ativo {
	background: #133a1b;
	color: #52c41a;
	border: 1px solid #52c41a;
}

.rhaokar-status-aposentado {
	background: #3a2e13;
	color: #faad14;
	border: 1px solid #faad14;
}

.rhaokar-status-morto {
	background: #3a1313;
	color: #ff4d4f;
	border: 1px solid #ff4d4f;
}

.rhaokar-char-card-body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.rhaokar-char-name {
	margin: 0 0 10px 0;
	color: #ffffff;
	font-size: 1.15rem;
	font-weight: 700;
}

.rhaokar-char-meta {
	font-size: 0.85rem;
	color: var(--rhaokar-text-muted);
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: 16px;
	flex: 1;
}

.rhaokar-char-meta span {
	display: flex;
	align-items: center;
	gap: 6px;
}

.rhaokar-char-card-actions {
	display: flex;
	gap: 8px;
	border-top: 1px solid var(--rhaokar-border);
	padding-top: 12px;
}

.rhaokar-card-btn {
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 6px 10px;
	font-size: 0.8rem;
	font-weight: 600;
	border-radius: 4px;
	text-decoration: none;
	border: 1px solid transparent;
	transition: all 0.2s ease;
	cursor: pointer;
}

.rhaokar-card-view {
	background: #232a33;
	color: #ffffff !important;
	border-color: #3e4856;
}

.rhaokar-card-view:hover {
	background: var(--rhaokar-gold);
	color: #000000 !important;
}

.rhaokar-card-edit {
	background: rgba(184, 134, 11, 0.25);
	color: var(--rhaokar-gold) !important;
	border-color: var(--rhaokar-gold-dark);
}

.rhaokar-card-edit:hover {
	background: var(--rhaokar-gold-dark);
	color: #000000 !important;
}

.rhaokar-card-delete {
	background: rgba(255, 77, 79, 0.15);
	color: var(--rhaokar-danger);
	border-color: rgba(255, 77, 79, 0.3);
	flex: 0 0 34px;
}

.rhaokar-card-delete:hover {
	background: var(--rhaokar-danger);
	color: #ffffff;
}

/* Empty State */
.rhaokar-empty-state {
	text-align: center;
	padding: 50px 20px;
	background: var(--rhaokar-bg-card);
	border: 1px dashed var(--rhaokar-border);
	border-radius: 8px;
}

.rhaokar-empty-icon span {
	font-size: 48px;
	width: 48px;
	height: 48px;
	color: var(--rhaokar-gold);
	margin-bottom: 14px;
}

/* ==================== SELETOR DE SISTEMA ==================== */
.rhaokar-selector-header {
	text-align: center;
	margin-bottom: 30px;
}

.rhaokar-selector-title {
	color: var(--rhaokar-gold);
	font-size: 1.8rem;
	margin: 10px 0;
}

.rhaokar-selector-subtitle {
	color: var(--rhaokar-text-muted);
	max-width: 650px;
	margin: 0 auto;
	font-size: 0.95rem;
}

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

.rhaokar-system-card {
	background: var(--rhaokar-bg-card);
	border: 2px solid var(--rhaokar-border);
	border-radius: 10px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	text-align: center;
	transition: all 0.25s ease;
}

.rhaokar-system-card:hover {
	border-color: var(--rhaokar-gold);
	transform: translateY(-4px);
}

.rhaokar-system-card-icon span {
	font-size: 42px;
	width: 42px;
	height: 42px;
	margin-bottom: 12px;
}

.rhaokar-system-name {
	color: #ffffff;
	font-size: 1.35rem;
	margin: 10px 0;
}

.rhaokar-system-desc {
	color: var(--rhaokar-text-muted);
	font-size: 0.9rem;
	line-height: 1.5;
	flex: 1;
	margin-bottom: 20px;
}

/* ==================== FORMULÁRIO DO BUILDER (MOBILE-FIRST) ==================== */
.rhaokar-builder-header {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-bottom: 2px solid var(--rhaokar-gold-dark);
	padding-bottom: 18px;
	margin-bottom: 20px;
	gap: 14px;
}

.rhaokar-builder-title-area {
	display: flex;
	align-items: center;
	gap: 14px;
}

.rhaokar-builder-title {
	margin: 0 0 4px 0;
	color: #ffffff;
	font-size: 1.4rem;
}

.rhaokar-builder-system-badge {
	font-size: 0.75rem;
	font-weight: 700;
	padding: 2px 10px;
	border-radius: 20px;
	text-transform: uppercase;
}

/* Abas Táteis */
.rhaokar-builder-tabs-nav {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	padding-bottom: 10px;
	margin-bottom: 24px;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.rhaokar-builder-tabs-nav::-webkit-scrollbar {
	height: 4px;
}

.rhaokar-builder-tabs-nav::-webkit-scrollbar-thumb {
	background: var(--rhaokar-gold-dark);
	border-radius: 4px;
}

.rhaokar-tab-btn {
	background: var(--rhaokar-bg-card);
	border: 1px solid var(--rhaokar-border);
	color: var(--rhaokar-text-muted);
	padding: 10px 16px;
	border-radius: 6px;
	cursor: pointer;
	font-weight: 600;
	font-size: 0.85rem;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: all 0.2s ease;
}

.rhaokar-tab-btn:hover {
	color: #ffffff;
	border-color: var(--rhaokar-gold);
}

.rhaokar-tab-btn.active {
	background: var(--rhaokar-gold-dark);
	color: #000000;
	font-weight: 700;
	border-color: var(--rhaokar-gold);
}

.rhaokar-tab-pane {
	display: none;
}

.rhaokar-tab-pane.active {
	display: block;
	animation: rhaokarFadeIn 0.25s ease-in-out;
}

@keyframes rhaokarFadeIn {
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Painéis de Campos */
.rhaokar-card-panel {
	background: var(--rhaokar-bg-card);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	padding: 20px;
}

.rhaokar-panel-title {
	color: var(--rhaokar-gold);
	font-size: 1.15rem;
	margin: 0 0 14px 0;
	border-bottom: 1px solid rgba(255, 215, 0, 0.2);
	padding-bottom: 8px;
}

.rhaokar-panel-desc {
	font-size: 0.85rem;
	color: var(--rhaokar-text-muted);
	margin-top: -6px;
	margin-bottom: 16px;
}

/* Grid de Formulário */
.rhaokar-form-grid {
	display: flex;
	flex-wrap: wrap;
	margin: -8px;
}

.rhaokar-col-12 { width: 100%; padding: 8px; box-sizing: border-box; }
.rhaokar-col-6  { width: 50%; padding: 8px; box-sizing: border-box; }

@media (min-width: 768px) {
	.rhaokar-col-md-6 { width: 50%; }
	.rhaokar-col-md-4 { width: 33.333%; }
	.rhaokar-col-md-3 { width: 25%; }
	.rhaokar-col-md-2 { width: 16.666%; }
	.rhaokar-col-md-1 { width: 8.333%; }
}

.rhaokar-form-group {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.rhaokar-form-group label {
	font-size: 0.82rem;
	font-weight: 600;
	color: var(--rhaokar-text);
}

.rhaokar-req {
	color: var(--rhaokar-danger);
}

.rhaokar-input,
.rhaokar-select,
.rhaokar-textarea {
	background-color: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	color: #ffffff;
	border-radius: 6px;
	padding: 10px 12px;
	font-size: 0.95rem;
	outline: none;
	width: 100%;
	box-sizing: border-box;
	transition: border-color 0.2s ease;
}

.rhaokar-input:focus,
.rhaokar-select:focus,
.rhaokar-textarea:focus {
	border-color: var(--rhaokar-gold);
	box-shadow: 0 0 8px rgba(255, 215, 0, 0.2);
}

/* Media Uploader */
.rhaokar-media-uploader {
	display: flex;
	align-items: center;
	gap: 16px;
}

.rhaokar-media-preview {
	width: 70px;
	height: 70px;
	border-radius: 8px;
	border: 1px solid var(--rhaokar-border);
	background-color: #0d0f12;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--rhaokar-text-muted);
}

/* Atributos Grid */
.rhaokar-attributes-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 14px;
}

.rhaokar-attr-box {
	background: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	padding: 12px;
	text-align: center;
}

.rhaokar-attr-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6px;
}

.rhaokar-attr-code {
	font-weight: 700;
	color: var(--rhaokar-gold);
	font-size: 1.1rem;
}

.rhaokar-attr-mod-pill {
	background: var(--rhaokar-gold);
	color: #000000;
	font-weight: 700;
	font-size: 0.85rem;
	padding: 2px 8px;
	border-radius: 12px;
}

.rhaokar-attr-title {
	display: block;
	font-size: 0.72rem;
	color: var(--rhaokar-text-muted);
	margin-bottom: 8px;
}

.rhaokar-attr-fields {
	display: flex;
	gap: 6px;
}

.rhaokar-attr-field-item {
	flex: 1;
}

.rhaokar-attr-field-item label {
	font-size: 0.65rem;
	color: var(--rhaokar-text-muted);
	display: block;
	margin-bottom: 2px;
}

.rhaokar-attr-field-item input {
	padding: 6px 4px;
	text-align: center;
	font-size: 0.85rem;
}

.rhaokar-attr-total-footer {
	margin-top: 8px;
	padding-top: 6px;
	border-top: 1px solid var(--rhaokar-border);
	font-size: 0.78rem;
}

/* Saves Grid */
.rhaokar-saves-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}

.rhaokar-save-box {
	background: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	padding: 16px;
}

.rhaokar-save-title {
	font-weight: 700;
	font-size: 1.05rem;
}

/* ==================== TABELA DE PERÍCIAS & REGRAS DE CONTRASTE ==================== */
.rhaokar-skills-table-responsive {
	overflow-x: auto;
	margin-top: 10px;
	border-radius: 6px;
	border: 1px solid var(--rhaokar-border);
}

.rhaokar-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 0;
}

.rhaokar-table th {
	background: #111418 !important;
	color: #ffd700 !important;
	font-size: 0.82rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 10px 12px;
	border-bottom: 2px solid var(--rhaokar-border) !important;
}

.rhaokar-table td {
	padding: 8px 12px;
	vertical-align: middle;
	font-size: 0.9rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

/* 1. LINHAS PRETAS (Fundo Preto -> Letras Brancas e Douradas) */
.rhaokar-table tbody tr:nth-child(odd),
.rhaokar-table tbody tr.rhaokar-row-black,
.rhaokar-table tbody tr.rhaokar-row-dark {
	background-color: #121418 !important;
	color: #ffffff !important;
}

.rhaokar-table tbody tr:nth-child(odd) td,
.rhaokar-table tbody tr:nth-child(odd) span,
.rhaokar-table tbody tr:nth-child(odd) label,
.rhaokar-table tbody tr.rhaokar-row-black td,
.rhaokar-table tbody tr.rhaokar-row-black span,
.rhaokar-table tbody tr.rhaokar-row-black label,
.rhaokar-table tbody tr.rhaokar-row-dark td,
.rhaokar-table tbody tr.rhaokar-row-dark span,
.rhaokar-table tbody tr.rhaokar-row-dark label {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

.rhaokar-table tbody tr:nth-child(odd) strong,
.rhaokar-table tbody tr.rhaokar-row-black strong,
.rhaokar-table tbody tr.rhaokar-row-dark strong,
.rhaokar-table tbody tr strong.rhaokar-skill-name {
	color: #ffd700 !important;
	-webkit-text-fill-color: #ffd700 !important;
	font-weight: 700 !important;
}

/* 2. LINHAS CINZA ESCURO (Fundo Cinza Escuro -> Letras Brancas e Douradas) */
.rhaokar-table tbody tr:nth-child(even),
.rhaokar-table tbody tr.rhaokar-row-darkgray,
.rhaokar-table tbody tr.rhaokar-row-gray,
.rhaokar-table tbody tr.rhaokar-row-white,
.rhaokar-table tbody tr.rhaokar-row-light {
	background-color: #222730 !important; /* Cinza escuro elegante */
	color: #ffffff !important;
}

.rhaokar-table tbody tr:nth-child(even) td,
.rhaokar-table tbody tr:nth-child(even) span,
.rhaokar-table tbody tr:nth-child(even) label,
.rhaokar-table tbody tr.rhaokar-row-darkgray td,
.rhaokar-table tbody tr.rhaokar-row-darkgray span,
.rhaokar-table tbody tr.rhaokar-row-darkgray label,
.rhaokar-table tbody tr.rhaokar-row-gray td,
.rhaokar-table tbody tr.rhaokar-row-gray span,
.rhaokar-table tbody tr.rhaokar-row-gray label,
.rhaokar-table tbody tr.rhaokar-row-white td,
.rhaokar-table tbody tr.rhaokar-row-white span,
.rhaokar-table tbody tr.rhaokar-row-white label,
.rhaokar-table tbody tr.rhaokar-row-light td,
.rhaokar-table tbody tr.rhaokar-row-light span,
.rhaokar-table tbody tr.rhaokar-row-light label {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

.rhaokar-table tbody tr:nth-child(even) strong,
.rhaokar-table tbody tr.rhaokar-row-darkgray strong,
.rhaokar-table tbody tr.rhaokar-row-gray strong,
.rhaokar-table tbody tr.rhaokar-row-white strong,
.rhaokar-table tbody tr.rhaokar-row-light strong {
	color: #ffd700 !important;
	-webkit-text-fill-color: #ffd700 !important;
	font-weight: 700 !important;
}

/* 3. CAMPOS DE DIGITAÇÃO EM TODAS AS LINHAS DA TABELA (Fundo Escuro + Letras Brancas Nítidas) */
.rhaokar-table tbody .rhaokar-input-sm,
.rhaokar-table tbody input[type="number"],
.rhaokar-table tbody input[type="text"] {
	background-color: #0b0d10 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	border: 1px solid #454f5e !important;
	font-weight: 700 !important;
}

.rhaokar-table tbody .rhaokar-input-sm:focus,
.rhaokar-table tbody input[type="number"]:focus,
.rhaokar-table tbody input[type="text"]:focus {
	background-color: #14171d !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	border-color: #ffd700 !important;
	box-shadow: 0 0 8px rgba(255, 215, 0, 0.5) !important;
}


/* Badge de Atributo (FOR, DES, CON, INT, SAB, CAR) */
.rhaokar-attr-badge {
	background: #1c2128 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: 0.72rem;
	font-weight: 700;
	padding: 3px 7px;
	border-radius: 4px;
	border: 1px solid #4a5463;
	display: inline-block;
}

.rhaokar-tag-trained {
	color: #e53935 !important;
	font-weight: 900;
	margin-left: 2px;
}

/* Regra Geral Global: Sempre que qualquer campo input tiver fundo branco, a letra DEVE ser preta */
.rhaokar-builder-wrapper input[style*="background: white"],
.rhaokar-builder-wrapper input[style*="background-color: white"],
.rhaokar-builder-wrapper input[style*="background: #fff"],
.rhaokar-builder-wrapper input[style*="background-color: #fff"],
.rhaokar-builder-wrapper input[style*="background: rgb(255, 255, 255)"],
.rhaokar-builder-wrapper input[style*="background-color: rgb(255, 255, 255)"],
input.rhaokar-input-light {
	background-color: #ffffff !important;
	color: #000000 !important;
	-webkit-text-fill-color: #000000 !important;
	font-weight: 600 !important;
}


/* Moedas */
.rhaokar-coins-row {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
}

.rhaokar-coin-box {
	flex: 1;
	min-width: 120px;
	background: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	border-radius: 6px;
	padding: 10px;
}

.coin-gold label { color: #ffd700; }
.coin-silver label { color: #c0c0c0; }
.coin-copper label { color: #cd7f32; }

/* Botão Flutuante Inferior para Celular */
.rhaokar-builder-sticky-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(14, 16, 20, 0.96);
	border-top: 2px solid var(--rhaokar-gold-dark);
	padding: 12px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 9999;
	backdrop-filter: blur(8px);
	box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.7);
}

.rhaokar-sticky-status {
	font-size: 0.85rem;
	color: var(--rhaokar-text-muted);
	display: flex;
	align-items: center;
	gap: 6px;
}

.rhaokar-sticky-actions {
	display: flex;
	gap: 10px;
}

/* ==================== ESTILOS DOS NOVOS CAMPOS & REPETIDORES ==================== */
.rhaokar-armor-card,
.rhaokar-shield-card,
.rhaokar-companion-card,
.rhaokar-base-card {
	background: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	border-radius: 8px;
	padding: 14px;
	margin-bottom: 12px;
	transition: border-color 0.2s ease;
}

.rhaokar-armor-card:hover,
.rhaokar-shield-card:hover,
.rhaokar-companion-card:hover,
.rhaokar-base-card:hover {
	border-color: rgba(255, 215, 0, 0.4);
}

.rhaokar-idioma-row,
.rhaokar-traco-row,
.rhaokar-feature-row {
	display: flex;
	align-items: center;
	gap: 12px;
	background: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	border-radius: 6px;
	padding: 10px 14px;
	margin-bottom: 10px;
}

/* 11 Slots Corporais de Itens Mágicos */
.rhaokar-slots-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.rhaokar-slot-item-box {
	background: #14171d;
	border: 1px solid var(--rhaokar-border);
	border-left: 3px solid var(--rhaokar-gold);
	border-radius: 6px;
	padding: 12px;
	transition: all 0.2s ease;
}

.rhaokar-slot-item-box:hover {
	border-color: var(--rhaokar-gold-dark);
	background: #181c24;
}

.rhaokar-slot-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}

.rhaokar-slot-name {
	color: var(--rhaokar-gold);
	font-size: 0.95rem;
}

.rhaokar-slot-desc {
	color: var(--rhaokar-text-muted);
	font-size: 0.75rem;
}

/* Tabela de Espaços de Magia */
.rhaokar-spells-table-responsive {
	overflow-x: auto;
	margin-top: 10px;
	border-radius: 6px;
	border: 1px solid var(--rhaokar-border);
}

.rhaokar-select-sm {
	background-color: var(--rhaokar-bg-input);
	border: 1px solid var(--rhaokar-border);
	color: #ffffff;
	border-radius: 4px;
	padding: 6px 8px;
	font-size: 0.85rem;
	outline: none;
}

/* Tela de Login */
.rhaokar-auth-container {
	max-width: 500px;
	padding: 36px 24px;
	text-align: center;
}

.rhaokar-auth-logo span {
	font-size: 52px;
	width: 52px;
	height: 52px;
	color: var(--rhaokar-gold);
	margin-bottom: 12px;
}

.rhaokar-auth-title {
	color: #ffffff;
	font-size: 1.5rem;
	margin: 0 0 8px 0;
}

.rhaokar-auth-subtitle {
	color: var(--rhaokar-text-muted);
	font-size: 0.9rem;
	line-height: 1.5;
	margin-bottom: 24px;
}

.rhaokar-input-icon-wrap {
	position: relative;
	display: flex;
	align-items: center;
}

.rhaokar-input-icon-wrap span {
	position: absolute;
	left: 12px;
	color: var(--rhaokar-gold);
}

.rhaokar-input-icon-wrap input {
	padding-left: 40px;
}

.rhaokar-auth-footer {
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid var(--rhaokar-border);
}

/* Responsividade Mobile */
@media (max-width: 767.98px) {
	.rhaokar-player-area-wrapper,
	.rhaokar-builder-wrapper {
		padding: 14px;
		margin: 10px auto;
	}

	.rhaokar-player-header {
		flex-direction: column;
		text-align: center;
	}

	.rhaokar-player-profile {
		flex-direction: column;
	}

	.rhaokar-player-actions-top {
		width: 100%;
		justify-content: center;
	}

	.rhaokar-builder-header {
		flex-direction: column;
		align-items: flex-start;
	}

	.rhaokar-builder-top-actions {
		display: none; /* Salvar é feito pela barra fixa inferior */
	}

	.rhaokar-builder-wrapper {
		padding-bottom: 80px; /* Evita que o conteúdo fique coberto pela barra fixa */
	}
}
