/* ==========================================================================
   M6 Global Accounts – Reporting Form (slate / green / Montserrat)
   Page background: #1E293B | Accent: #6D9655
   ========================================================================== */

.m6-gam {
	--m6-bg: #1E293B;
	--m6-bg-elevated: #273449;
	--m6-bg-input: rgba(255, 255, 255, 0.05);
	--m6-border: rgba(255, 255, 255, 0.10);
	--m6-border-focus: rgba(109, 150, 85, 0.5);
	--m6-text: #ffffff;
	--m6-text-muted: rgba(255, 255, 255, 0.6);
	--m6-accent: #6D9655;
	--m6-accent-hover: #5C8047;
	--m6-accent-soft: rgba(109, 150, 85, 0.14);
	--m6-radius: 12px;
	--m6-radius-pill: 999px;
	--m6-error: #E8806E;
	--m6-success: #8BB872;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 16px;
	color: var(--m6-text);
}

/* Container – sits on page background #1E293B */
.m6-gam-form-wrap {
	max-width: 720px;
	margin: 0 auto 2rem;
	padding: 0 16px;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 16px;
	color: var(--m6-text);
	line-height: 1.5;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.m6-gam-form-wrap {
		padding: 0;
	}
}

/* Header */
.m6-gam-form-header {
	margin-bottom: 1.75rem;
}
.m6-gam .m6-gam-form-wrap .m6-gam-form-title {
	margin: 0 0 0.5rem;
	font-size: 1.875rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: #ffffff !important;
	font-family: 'Montserrat', sans-serif;
}
.m6-gam .m6-gam-form-wrap .m6-gam-form-intro {
	margin: 0;
	font-size: 16px;
	color: var(--m6-text-muted);
	line-height: 1.6;
}

/* Sections – rounded cards */
.m6-gam-section {
	background: var(--m6-bg-elevated);
	border: 1px solid var(--m6-border);
	border-radius: var(--m6-radius);
	margin-bottom: 1.5rem;
	padding: 1.25rem 1rem;
}

@media (min-width: 640px) {
	.m6-gam-section {
		padding: 1.5rem 1.75rem;
	}
}
.m6-gam .m6-gam-form-wrap .m6-gam-section-title {
	margin: 0 0 1.25rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: #ffffff !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid var(--m6-border);
	font-family: 'Montserrat', sans-serif;
}

/* Field grid */
.m6-gam-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem 1.5rem;
}
@media (max-width: 520px) {
	.m6-gam-fields {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}
}
.m6-gam-field {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.m6-gam-field-full {
	grid-column: 1 / -1;
}

/* Labels – white, semi-bold (theme-proof) */
.m6-gam .m6-gam-form-wrap .m6-gam-field label,
.m6-gam .m6-gam-form-wrap .m6-gam-field .m6-form-label,
.m6-gam .m6-gam-form-wrap .m6-gam-section label,
.m6-gam .m6-gam-form-wrap label.m6-form-label,
.m6-gam .m6-gam-form-wrap label {
	color: #ffffff !important;
	display: block !important;
	margin-bottom: 12px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	opacity: 1 !important;
	-webkit-text-fill-color: #ffffff !important;
}
.m6-gam .m6-gam-form-wrap .m6-gam-required {
	color: var(--m6-accent) !important;
	-webkit-text-fill-color: var(--m6-accent) !important;
}

/* ==========================================================================
   Form fields — owned by plugin (overrides theme)
   ========================================================================== */
.m6-gam .m6-gam-form-wrap input.m6-gam-input,
.m6-gam .m6-gam-form-wrap select.m6-gam-select,
.m6-gam .m6-gam-form-wrap select.m6-gam-input,
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea,
.m6-gam .m6-gam-form-wrap .m6-gam-input,
.m6-gam .m6-gam-form-wrap .m6-gam-select,
.m6-gam .m6-gam-form-wrap .m6-gam-textarea,
.m6-portal .m6-gam-form-wrap input.m6-gam-input,
.m6-portal .m6-gam-form-wrap select.m6-gam-select,
.m6-portal .m6-gam-form-wrap select.m6-gam-input,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea,
.m6-portal .m6-gam-form-wrap .m6-gam-input,
.m6-portal .m6-gam-form-wrap .m6-gam-select,
.m6-portal .m6-gam-form-wrap .m6-gam-textarea {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 48px !important;
	padding: 12px 16px !important;
	margin: 0 !important;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	caret-color: #ffffff !important;
	background: #334155 !important;
	background-color: #334155 !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	outline: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
	color-scheme: dark !important;
	opacity: 1 !important;
}

.m6-gam .m6-gam-form-wrap input.m6-gam-input::placeholder,
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea::placeholder,
.m6-portal .m6-gam-form-wrap input.m6-gam-input::placeholder,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea::placeholder {
	color: rgba(255, 255, 255, 0.55) !important;
	-webkit-text-fill-color: rgba(255, 255, 255, 0.55) !important;
	opacity: 1 !important;
	font-family: 'Montserrat', sans-serif !important;
}

.m6-gam .m6-gam-form-wrap input.m6-gam-input:hover,
.m6-gam .m6-gam-form-wrap select.m6-gam-select:hover,
.m6-gam .m6-gam-form-wrap select.m6-gam-input:hover,
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea:hover,
.m6-portal .m6-gam-form-wrap input.m6-gam-input:hover,
.m6-portal .m6-gam-form-wrap select.m6-gam-select:hover,
.m6-portal .m6-gam-form-wrap select.m6-gam-input:hover,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea:hover {
	border-color: rgba(255, 255, 255, 0.35) !important;
	background-color: #3B4A63 !important;
}

.m6-gam .m6-gam-form-wrap input.m6-gam-input:focus,
.m6-gam .m6-gam-form-wrap select.m6-gam-select:focus,
.m6-gam .m6-gam-form-wrap select.m6-gam-input:focus,
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea:focus,
.m6-portal .m6-gam-form-wrap input.m6-gam-input:focus,
.m6-portal .m6-gam-form-wrap select.m6-gam-select:focus,
.m6-portal .m6-gam-form-wrap select.m6-gam-input:focus,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea:focus {
	outline: none !important;
	border-color: #6D9655 !important;
	background-color: #334155 !important;
	box-shadow: 0 0 0 3px rgba(109, 150, 85, 0.25) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

.m6-gam .m6-gam-form-wrap input.m6-gam-input.error,
.m6-gam .m6-gam-form-wrap select.m6-gam-select.error,
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea.error,
.m6-portal .m6-gam-form-wrap input.m6-gam-input.error,
.m6-portal .m6-gam-form-wrap select.m6-gam-select.error,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea.error {
	border-color: #E8806E !important;
	box-shadow: 0 0 0 3px rgba(232, 128, 110, 0.2) !important;
}

/* Selects / dropdowns */
.m6-gam .m6-gam-form-wrap select.m6-gam-select,
.m6-gam .m6-gam-form-wrap select.m6-gam-input,
.m6-portal .m6-gam-form-wrap select.m6-gam-select,
.m6-portal .m6-gam-form-wrap select.m6-gam-input {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	background-color: #334155 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	background-size: 12px 12px !important;
	padding-right: 40px !important;
	cursor: pointer !important;
}

.m6-gam .m6-gam-form-wrap select.m6-gam-select option,
.m6-gam .m6-gam-form-wrap select.m6-gam-input option,
.m6-gam .m6-gam-form-wrap select.m6-gam-select optgroup,
.m6-gam .m6-gam-form-wrap select.m6-gam-input optgroup,
.m6-portal .m6-gam-form-wrap select.m6-gam-select option,
.m6-portal .m6-gam-form-wrap select.m6-gam-input option,
.m6-portal .m6-gam-form-wrap select.m6-gam-select optgroup,
.m6-portal .m6-gam-form-wrap select.m6-gam-input optgroup {
	background-color: #1E293B !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

/* Textareas */
.m6-gam .m6-gam-form-wrap textarea.m6-gam-textarea,
.m6-portal .m6-gam-form-wrap textarea.m6-gam-textarea {
	min-height: 120px !important;
	height: auto !important;
	resize: vertical !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
}

/* Number inputs — hide spinner on webkit for cleaner look */
.m6-gam .m6-gam-form-wrap input.m6-gam-input[type="number"]::-webkit-outer-spin-button,
.m6-gam .m6-gam-form-wrap input.m6-gam-input[type="number"]::-webkit-inner-spin-button,
.m6-portal .m6-gam-form-wrap input.m6-gam-input[type="number"]::-webkit-outer-spin-button,
.m6-portal .m6-gam-form-wrap input.m6-gam-input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}
.m6-gam .m6-gam-form-wrap input.m6-gam-input[type="number"],
.m6-portal .m6-gam-form-wrap input.m6-gam-input[type="number"] {
	-moz-appearance: textfield !important;
}

/* Autofill (Chrome) — keep dark theme */
.m6-gam .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill,
.m6-gam .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill:hover,
.m6-gam .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill:focus,
.m6-portal .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill,
.m6-portal .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill:hover,
.m6-portal .m6-gam-form-wrap input.m6-gam-input:-webkit-autofill:focus {
	-webkit-text-fill-color: #ffffff !important;
	caret-color: #ffffff !important;
	box-shadow: 0 0 0 1000px #334155 inset !important;
	transition: background-color 99999s ease-in-out 0s !important;
}

/* Buttons — green pills */
.m6-gam-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 28px;
	font-size: 14px;
	font-weight: 600;
	font-family: 'Montserrat', sans-serif;
	line-height: 1.4;
	text-decoration: none;
	border: none;
	border-radius: var(--m6-radius-pill);
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.1s ease;
}
.m6-gam-btn-primary {
	background: var(--m6-accent);
	color: #fff;
}
.m6-gam-btn-primary:hover,
.m6-gam-btn-primary:focus,
.m6-gam-btn-primary:active,
.m6-gam-btn-primary.is-loading {
	background: var(--m6-accent-hover);
	color: #fff;
}
.m6-gam-btn-primary:hover .m6-btn-loading-text,
.m6-gam-btn-primary.is-loading .m6-btn-loading-text {
	color: #fff;
}
.m6-gam-btn-primary:focus {
	outline: none;
	box-shadow: 0 0 0 3px var(--m6-accent-soft);
}
.m6-gam-btn-primary:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

/* Form actions */
.m6-gam-form-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--m6-border);
}
.m6-gam-msg {
	font-size: 14px;
}
.m6-gam-msg.success {
	color: var(--m6-success);
}
.m6-gam-msg.error {
	color: var(--m6-error);
}
.m6-gam-field-error {
	font-size: 0.75rem;
	color: var(--m6-error);
	margin-top: 0.25rem;
}

/* Login notice */
.m6-gam-notice {
	padding: 1rem 1.25rem;
	background: var(--m6-bg-elevated);
	border: 1px solid var(--m6-border);
	border-radius: var(--m6-radius);
	color: var(--m6-text);
	max-width: 720px;
	margin: 0 auto 2rem;
	font-size: 16px;
}

/* Inline login prompt (gated shortcodes) */
.m6-gam-login-prompt {
	max-width: 480px;
	margin: 0 auto 2rem;
	padding: 1.25rem 1rem;
	background: var(--m6-bg-elevated);
	border: 1px solid var(--m6-border);
	border-radius: var(--m6-radius);
	color: var(--m6-text);
	font-family: 'Montserrat', sans-serif;
	box-sizing: border-box;
}

@media (min-width: 640px) {
	.m6-gam-login-prompt {
		padding: 1.5rem 1.75rem;
	}
}
.m6-gam-login-prompt-message {
	margin: 0 0 1.25rem;
	font-size: 1rem;
	line-height: 1.5;
}
.m6-gam-login-prompt-form .m6-form-group {
	margin-bottom: 1rem;
}
.m6-gam-login-prompt-form .m6-gam-btn-primary,
.m6-gam-login-prompt-form .m6-gam-login-submit {
	width: 100%;
	margin-top: 0.25rem;
}
.m6-gam-login-prompt-footer {
	margin: 0.75rem 0 0;
	font-size: 0.875rem;
	text-align: center;
}
.m6-gam-login-prompt-footer a {
	color: var(--m6-accent, #6D9655);
	text-decoration: none;
}
.m6-gam-login-prompt-footer a:hover {
	text-decoration: underline;
}
.m6-gam-login-prompt-portal {
	margin: 1.25rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid var(--m6-border);
	font-size: 0.875rem;
	text-align: center;
	color: var(--m6-text-muted, rgba(255, 255, 255, 0.7));
}
.m6-gam-login-prompt-portal a {
	color: var(--m6-accent, #6D9655);
	font-weight: 600;
	text-decoration: none;
}
.m6-gam-login-prompt-portal a:hover {
	text-decoration: underline;
}
.m6-gam-login-prompt .m6-auth-msg {
	margin-top: 0.75rem;
	text-align: center;
	font-size: 0.875rem;
}
.m6-gam-login-prompt .m6-auth-msg.is-error {
	color: var(--m6-error);
}

.m6-gam-login-prompt .m6-password-field .m6-form-input {
	padding-right: 48px;
}

.m6-gam-login-prompt .m6-password-toggle {
	color: rgba(255, 255, 255, 0.55);
}

/* ==========================================================================
   Dashboard
   ========================================================================== */
.m6-gam-dashboard {
	max-width: 820px;
	margin: 0 auto 2rem;
	padding: 0 16px;
	color: var(--m6-text);
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.m6-gam-dashboard {
		padding: 0;
	}
}
.m6-gam-dashboard h2 {
	margin: 0 0 0.5rem;
	font-size: 1.875rem;
	font-weight: 600;
	color: var(--m6-text);
}
.m6-gam-dashboard-actions {
	margin-bottom: 1.25rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}
.m6-gam-dashboard-actions .m6-gam-btn {
	background: var(--m6-accent);
	color: #fff;
	padding: 12px 28px;
	border-radius: var(--m6-radius-pill);
	text-decoration: none;
	font-size: 14px;
}
.m6-gam-dashboard-actions .m6-gam-btn:hover {
	background: var(--m6-accent-hover);
	color: #fff;
}
.m6-gam-dashboard-table {
	width: 100%;
	border-collapse: collapse;
	background: var(--m6-bg-elevated);
	border: 1px solid var(--m6-border);
	border-radius: var(--m6-radius);
	overflow: hidden;
}
.m6-gam-dashboard-table th,
.m6-gam-dashboard-table td {
	padding: 0.75rem 1rem;
	text-align: left;
	border-bottom: 1px solid var(--m6-border);
	color: var(--m6-text);
	font-size: 16px;
}
.m6-gam-dashboard-table th {
	background: var(--m6-bg);
	font-weight: 600;
	font-size: 0.8125rem;
	color: var(--m6-text-muted);
}
.m6-gam-dashboard-table tr:last-child td {
	border-bottom: none;
}

.m6-gam-dashboard-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom: 1rem;
}

.m6-gam-dashboard-table-wrap .m6-gam-dashboard-table {
	min-width: 560px;
}

@media (max-width: 640px) {
	.m6-gam-dashboard-table th,
	.m6-gam-dashboard-table td {
		padding: 0.625rem 0.75rem;
		font-size: 14px;
	}

	.m6-gam-form-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.m6-gam-form-actions .m6-gam-btn {
		width: 100%;
	}
}

/* Break out of narrow theme columns for standalone form/dashboard pages */
.entry-content > .m6-gam,
.wp-block-post-content > .m6-gam,
main .m6-gam {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/* ==========================================================================
   Reporting form labels — maximum theme override (standalone + portal pages)
   ========================================================================== */
#m6-gam-report-form.m6-gam-form .m6-gam-field > label.m6-form-label,
.m6-gam.m6-gam-form-wrap.m6-portal-form .m6-gam-field > label.m6-form-label,
.m6-gam.m6-gam-form-wrap .m6-gam-field > label.m6-form-label,
#m6-gam-report-form label.m6-form-label,
.m6-gam-form-wrap label.m6-form-label,
main#content .m6-gam-form-wrap label.m6-form-label,
.page-content .m6-gam-form-wrap label.m6-form-label,
.entry-content .m6-gam-form-wrap label.m6-form-label {
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	opacity: 1 !important;
	display: block !important;
	margin-bottom: 12px !important;
	-webkit-text-fill-color: #ffffff !important;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

#m6-gam-report-form .m6-gam-required,
.m6-gam-form-wrap .m6-gam-required {
	color: #6D9655 !important;
	-webkit-text-fill-color: #6D9655 !important;
}
