/* OceanLinux API Integration — customer Server Management card
   Neutral, theme-friendly (XStore compatible); uses its own scope so it does not
   fight the active theme. Responsive: controls wrap on tablet/mobile. */

.olapi-sm-card {
	margin: 24px 0;
	padding: 20px 22px;
	border: 2px solid #2271b1;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.06 );
	color: #1d2327;
}

.olapi-sm-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
.olapi-sm-title {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .2px;
}
.olapi-sm-sub {
	margin: 2px 0 0;
	font-size: 13px;
	color: #50575e;
}
.olapi-sm-type {
	padding: 3px 12px;
	border-radius: 999px;
	background: #e7f0f8;
	color: #135e96;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}

.olapi-sm-status {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 16px 0;
	flex-wrap: wrap;
}
.olapi-sm-status-label { font-weight: 600; }
.olapi-sm-status-dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #a7aaad;
	display: inline-block;
}
.olapi-sm-status-dot[data-state="up"]      { background: #46b450; box-shadow: 0 0 0 3px rgba( 70, 180, 80, .18 ); }
.olapi-sm-status-dot[data-state="down"]    { background: #d63638; box-shadow: 0 0 0 3px rgba( 214, 54, 56, .18 ); }
.olapi-sm-status-dot[data-state="pending"] { background: #dba617; box-shadow: 0 0 0 3px rgba( 219, 166, 23, .18 ); }
.olapi-sm-status-text { font-weight: 600; }

.olapi-sm-section {
	border-top: 1px solid #f0f0f1;
	padding-top: 14px;
	margin-top: 6px;
}
.olapi-sm-section h4 {
	margin: 0 0 10px;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .6px;
	color: #50575e;
}

.olapi-sm-controls {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.olapi-btn {
	appearance: none;
	border: 1px solid #2271b1;
	background: #2271b1;
	color: #fff;
	padding: 9px 16px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s ease, opacity .15s ease;
}
.olapi-btn:hover { background: #135e96; }
.olapi-btn:disabled { opacity: .55; cursor: not-allowed; }
.olapi-btn-ghost {
	background: transparent;
	color: #2271b1;
}
.olapi-btn-ghost:hover { background: #f0f6fc; }
.olapi-btn-danger {
	background: #b32d2e;
	border-color: #b32d2e;
}
.olapi-btn-danger:hover { background: #8a1f20; }

.olapi-sm-oslabel {
	display: block;
	font-size: 13px;
	margin-bottom: 6px;
	color: #50575e;
}
.olapi-sm-osrow {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}
.olapi-sm-os {
	min-width: 220px;
	padding: 8px 10px;
	border: 1px solid #8c8f94;
	border-radius: 8px;
	font-size: 14px;
}

.olapi-sm-last {
	margin: 14px 0 0;
	font-size: 12px;
	color: #646970;
}

.olapi-sm-feedback {
	margin-top: 12px;
	padding: 10px 12px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
}
.olapi-sm-feedback.is-ok    { background: #edfaef; color: #1a7f37; }
.olapi-sm-feedback.is-error { background: #fcf0f1; color: #a4171a; }

.olapi-sm-card.is-busy { opacity: .85; }

@media ( max-width: 600px ) {
	.olapi-sm-controls .olapi-btn,
	.olapi-sm-osrow .olapi-btn { flex: 1 1 100%; }
	.olapi-sm-os { min-width: 0; width: 100%; }
}
