/**
 * TXQP Activity Map Styles
 * Colors: Navy #1B3168, Red #C8102E, Cream #F5EFE0
 */

.txqp-activitymap {
	position: relative;
	margin: 2rem 0;
	font-family: system-ui, -apple-system, sans-serif;
	color: #333;
}

.txqp-activitymap * {
	box-sizing: border-box;
}

/* Status message overlay */
.txqp-am-status {
	padding: 1rem;
	margin-bottom: 1rem;
	border-radius: 4px;
	font-weight: bold;
	text-align: center;
}
.txqp-am-status.is-success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.txqp-am-status.is-error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }

/* Map */
.txqp-am-map {
	width: 100%;
	background: #eee;
	border: 1px solid #ccc;
	border-radius: 4px;
	z-index: 1; /* Under header */
}

/* Legend */
.txqp-am-legend {
	display: flex;
	gap: 1.5rem;
	justify-content: center;
	margin-top: 0.5rem;
	font-size: 0.9rem;
}
.txqp-am-legend-item {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}
.txqp-am-swatch {
	width: 16px;
	height: 16px;
	display: inline-block;
	border-radius: 2px;
}
.txqp-am-swatch.is-active { background: rgba(27, 49, 104, 0.4); border: 2px solid #C8102E; }
.txqp-am-swatch.is-inactive { background: rgba(232, 228, 216, 0.55); border: 1px solid #9c9482; }

/* Popup */
.txqp-am-popup { font-size: 14px; }
.txqp-am-popup h4 { margin: 0 0 8px 0; color: #1B3168; font-size: 16px; border-bottom: 1px solid #eee; padding-bottom: 4px;}
.txqp-am-poplist { display: flex; flex-direction: column; gap: 8px; max-height: 200px; overflow-y: auto; }
.txqp-am-op { background: #f9f9f9; padding: 6px; border-radius: 3px; border-left: 3px solid #1B3168;}
.txqp-am-op .txqp-am-call { font-weight: 700; color: #1B3168; display: block;}
.txqp-am-meta { font-size: 12px; color: #555; }

/* Form wrapper and login prompt */
.txqp-am-form-container {
	margin: 2rem 0;
	padding: 1.5rem;
	background: #F5EFE0;
	border-radius: 6px;
	border: 1px solid #e2dccf;
}
.txqp-am-loginnotice {
	display: flex;
	align-items: center;
	gap: 1rem;
	justify-content: center;
}
.txqp-am-formtitle {
	margin: 0 0 1rem 0;
	color: #1B3168;
}

/* Form Styles */
.txqp-am-form .txqp-am-field {
	margin-bottom: 1rem;
}
.txqp-am-field-row {
	display: flex;
	gap: 1rem;
}
.txqp-am-field-row > .txqp-am-field {
	flex: 1;
}
.txqp-am-form label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: #1B3168;
}
.txqp-am-req { color: #C8102E; }
.txqp-am-form input[type="text"],
.txqp-am-form input[type="datetime-local"],
.txqp-am-form textarea {
	width: 100%;
	padding: 0.6rem;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-family: inherit;
}
.txqp-am-multiselect {
	position: relative;
}
.txqp-am-county-options {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #ccc;
	max-height: 200px;
	overflow-y: auto;
	z-index: 10;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.txqp-am-county-option {
	padding: 8px 12px;
	cursor: pointer;
}
.txqp-am-county-option:hover { background: #f0f0f0; }
.txqp-am-county-option.is-selected { color: #999; cursor: default; }

.txqp-am-county-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 8px;
}
.txqp-am-chip {
	display: inline-flex;
	align-items: center;
	background: #1B3168;
	color: #fff;
	border-radius: 12px;
	padding: 2px 10px;
	font-size: 13px;
}
.txqp-am-chip button {
	background: none;
	border: none;
	color: #fff;
	margin-left: 6px;
	cursor: pointer;
	padding: 0;
	font-size: 16px;
	line-height: 1;
	opacity: 0.8;
}
.txqp-am-chip button:hover { opacity: 1; }

.txqp-am-actions {
	display: flex;
	gap: 1rem;
	margin-top: 1.5rem;
}
.txqp-am-btn {
	padding: 0.6rem 1.2rem;
	border: none;
	border-radius: 4px;
	font-weight: bold;
	cursor: pointer;
	text-decoration: none;
	display: inline-block;
}
.txqp-am-btn-primary { background: #C8102E; color: #fff; }
.txqp-am-btn-primary:hover { background: #a00c24; }
.txqp-am-btn-danger { background: #fff; color: #C8102E; border: 1px solid #C8102E; }
.txqp-am-btn-danger:hover { background: #C8102E; color: #fff; }

/* Table */
.txqp-am-tablewrap { margin-top: 3rem; }
.txqp-am-tabletools { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; flex-wrap: wrap; gap: 1rem; }
.txqp-am-tabletitle { margin: 0; color: #1B3168; }
.txqp-am-search { padding: 0.5rem; border: 1px solid #ccc; border-radius: 4px; width: 300px; max-width: 100%; }
.txqp-am-tablescroll { overflow-x: auto; }
.txqp-am-table { width: 100%; border-collapse: collapse; text-align: left; }
.txqp-am-table th { background: #F5EFE0; color: #1B3168; padding: 10px; font-weight: bold; cursor: pointer; border-bottom: 2px solid #e2dccf; }
.txqp-am-table th:hover { background: #efe6d0; }
.txqp-am-table th[data-sort]::after { content: '\2195'; margin-left: 6px; color: #ccc; }
.txqp-am-table th.sort-asc::after { content: '\2191'; color: #1B3168; }
.txqp-am-table th.sort-desc::after { content: '\2193'; color: #1B3168; }
.txqp-am-table td { padding: 10px; border-bottom: 1px solid #eee; }
.txqp-am-table tr:hover td { background: #fcfcfc; }
.txqp-am-table tr.is-mine td { background: #f0f7ff; }

.txqp-am-call { font-weight: bold; color: #1B3168; }
.txqp-am-rowbtn { background: none; border: none; cursor: pointer; font-size: 13px; text-decoration: underline; margin-right: 8px; padding: 0;}
.txqp-am-rowbtn.edit { color: #1B3168; }
.txqp-am-rowbtn.delete { color: #C8102E; }



/* Bands checkbox group */

.txqp-am-bands{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin-top:.25rem}

.txqp-am-band-chk{display:inline-flex;align-items:center;gap:.3rem;font-weight:500;white-space:nowrap}

.txqp-am-band-chk input{margin:0}

