/* BW Dev — Launch Checklist tab. Admin-only styling. */

.bw-lc { max-width: 900px; }

.bw-lc-toolbar {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 8px 0 18px;
	flex-wrap: wrap;
}

/* Progress bars */
.bw-lc-progress {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: #50575e;
}
.bw-lc-progress-name { font-weight: 600; }
.bw-lc-progress-track {
	display: inline-block;
	width: 160px;
	height: 8px;
	background: #e0e0e0;
	border-radius: 5px;
	overflow: hidden;
	vertical-align: middle;
}
.bw-lc-progress-fill {
	display: block;
	height: 100%;
	width: 0;
	background: #2271b1;
	transition: width .25s ease;
}
.bw-lc-progress-fill.is-complete { background: #00a32a; }
.bw-lc-progress-label { white-space: nowrap; }
.bw-lc-toolbar .bw-lc-progress-track { width: 220px; height: 10px; }

/* Sections */
.bw-lc-section {
	border: 1px solid #dcdcde;
	border-radius: 4px;
	margin: 0 0 16px;
	background: #fff;
}
.bw-lc-section-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 16px;
	cursor: pointer;
	list-style: none;
	font-size: 15px;
	font-weight: 600;
	background: #f6f7f7;
	border-radius: 4px 4px 0 0;
}
.bw-lc-section[open] .bw-lc-section-summary { border-bottom: 1px solid #dcdcde; }
.bw-lc-section-summary::-webkit-details-marker { display: none; }
.bw-lc-section-summary::before {
	content: "\25B6";
	font-size: 10px;
	color: #787c82;
	margin-right: 4px;
	transition: transform .15s ease;
}
.bw-lc-section[open] .bw-lc-section-summary::before { transform: rotate(90deg); }
.bw-lc-section-title { flex: 1; }
.bw-lc-section-intro { margin: 12px 16px 0; }

/* Sub-group headers */
.bw-lc-subgroup {
	margin: 18px 16px 6px;
	padding-bottom: 4px;
	border-bottom: 1px solid #f0f0f1;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: #646970;
}

/* Items */
.bw-lc-item {
	padding: 10px 16px 12px;
	border-top: 1px solid #f0f0f1;
}
.bw-lc-item:first-of-type { border-top: 0; }
.bw-lc-item-head {
	display: flex;
	align-items: center;
	gap: 8px;
}
.bw-lc-num { color: #787c82; font-variant-numeric: tabular-nums; }
.bw-lc-title { font-weight: 600; flex: 1; }
.bw-lc-item-head .bw-lc-verify { margin-left: auto; }

.bw-lc-item-body { margin: 4px 0 0 26px; }
.bw-lc-instr { margin: 4px 0; color: #3c434a; max-width: 760px; }
.bw-lc-links { margin: 6px 0; }
.bw-lc-links a { margin-right: 14px; }
.bw-lc-msg { margin: 6px 0; font-size: 12px; color: #50575e; min-height: 1em; }
.bw-lc-checkline {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 4px;
	font-size: 13px;
}

/* Status dots */
.bw-lc-dot {
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	flex: 0 0 12px;
	background: #c3c4c7;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
}
.bw-lc-dot--pass { background: #00a32a; }
.bw-lc-dot--fail { background: #d63638; }
.bw-lc-dot--unknown { background: #dba617; }
.bw-lc-dot--pending { background: #c3c4c7; }
.bw-lc-dot--todo { background: #c3c4c7; }
.bw-lc-dot.is-busy { background: #2271b1; animation: bw-lc-pulse 1s ease-in-out infinite; }

@keyframes bw-lc-pulse {
	0%, 100% { opacity: .35; }
	50% { opacity: 1; }
}

.bw-lc-msg.is-busy { color: #2271b1; }
