/* 外层容器确保水平 + 垂直居中 */
.d-flex.align-items-center {
    align-items: center;  /* 垂直居中 */
}

/* 卡片整体样式（毛玻璃 + 更方） */
.status-card {
    display: flex;
    align-items: center;
    padding: 4px 8px;                 /* 内边距略小 */
    border-radius: 4px;                /* 圆角更小，更方 */
    border: 1px solid rgba(255,255,255,0.2);
    background-color: rgba(255,255,255,0.12); /* 半透明背景 */
    backdrop-filter: blur(8px);        /* 毛玻璃模糊效果 */
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    gap: 5px;
    transition: border-color 0.4s ease, color 0.4s ease, box-shadow 0.4s ease;
}

/* 已就绪 */
.status-card.ready {
    border-color: rgba(13,110,253,0.6);
    color: #0d6efd;
}

/* 未就绪 */
.status-card.not-ready {
    border-color: rgba(220,53,69,0.6);
    color: #dc3545;
}

/* idle 状态，用于未知 */
.status-card.idle {
    border-color: rgba(108,117,125,0.5); /* 灰色边框 */
    color: #6c757d;                       /* 灰色文字 */
    background-color: rgba(255,255,255,0.08); /* 半透明灰背景 */
}

/* idle 圆点 */
.status-dot.idle {
    background-color: #6c757d;
    --breathe-color: rgba(108,117,125,0.3);
}

/* 状态文字：更小、更细 */
.status-text {
    font-size: 0.55rem;       /* 再小一点 */
    font-weight: 400;          /* 更细字体 */
    color: inherit;            /* 跟随卡片颜色 */
    line-height: 1.1;          /* 紧凑行高 */
}

/* 圆点呼吸灯略小 */
.status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.3s, box-shadow 0.3s;
    --breathe-color: rgba(13,110,253,0.4);
}

@keyframes breathe {
    0%   { box-shadow: 0 0 0 0 var(--breathe-color); }
    50%  { box-shadow: 0 0 5px 2px var(--breathe-color); }
    100% { box-shadow: 0 0 0 0 var(--breathe-color); }
}

.status-dot.breathe {
    animation: breathe 1.8s ease-in-out infinite;
}

.status-dot.online { background-color: #0d6efd; --breathe-color: rgba(13,110,253,0.4); }
.status-dot.offline { background-color: #dc3545; --breathe-color: rgba(220,53,69,0.4); }
.status-dot.idle { background-color: #6c757d; --breathe-color: rgba(108,117,125,0.3); }

/* 手机端竖排 */
@media (max-width: 768px) {
    .d-flex.flex-md-row > .d-flex.flex-column {
        margin-left: 0 !important;
    }
}



.thermometer, .thermometer__tube {
	position: relative;
}
.thermometer {
	background-image: linear-gradient(-135deg,hsl(223,10%,85%),hsl(223,10%,65%));
	border-radius: 2em;
	box-shadow:
		0.2em 0 0.1em hsl(223,10%,45%) inset,
		0 -0.2em 0.1em hsl(223,10%,45%) inset,
		-0.1em 0 0 hsl(223,10%,80%) inset,
		0 0.1em 0 hsl(223,10%,80%) inset;
	margin: auto;
	width: 10em;
	height: 30em;
}
.thermometer:before, .thermometer__inner, .thermometer__ring, .thermometer__tube:before {
	position: absolute;
}
.thermometer:before, .thermometer__inner {
	left: 1em;
}
.thermometer:before, .thermometer__tube:before {
	content: "";
	display: block;
}
.thermometer:before {
	background-image: linear-gradient(hsl(223,10%,90%),hsl(223,10%,80%));
	border-radius: 1.2em;
	box-shadow:
		-0.1em 0.1em 0.1em hsl(223,10%,55%) inset,
		0.2em -0.2em 0.4em hsl(223,10%,100%) inset,
		-0.3em 0.2em 0.4em hsl(223,10%,55%) inset,
		0.1em -0.1em 0.1em hsl(223,10%,70%),
		0.5em -0.5em 0.3em hsl(223,10%,65%),
		0 0 0.4em 0.4em hsl(223,10%,100%);
	top: 1em;
	width: calc(100% - 2em);
	height: calc(100% - 2em);
}
.thermometer__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: flex-start;
	top: 2em;
	text-align: center;
	width: calc(100% - 2em);
	height: calc(100% - 4em);
}

/*.thermometer__c, .thermometer__f {*/
/*	background-image:*/
/*		linear-gradient(hsl(0,0%,0%) 0.1em,hsla(0,0%,0%,0) 0.1em),*/
/*		linear-gradient(hsl(0,0%,0%) 0.1em,hsla(0,0%,0%,0) 0.1em);*/
/*	background-repeat: repeat-y;*/
/*	flex-basis: calc(50% - 0.75em);*/
/*	margin-bottom: 0.125em;*/
/*}*/

.thermometer__c, .thermometer__f {
    flex-basis: calc(50% - 0.75em);
    margin-bottom: 0.125em;
}

/* 摄氏度刻度 */
.thermometer__c {
  background-image: 
    /* 长刻度：每1em一条，第一条线从顶部开始 */
    repeating-linear-gradient(
      to bottom,
      hsl(0,0%,0%) 0,
      hsl(0,0%,0%) 0.08em,
      transparent 0.08em,
      transparent 1em
    ),
    /* 短刻度：每0.2em一条，第一条线从顶部开始 */
    repeating-linear-gradient(
      to bottom,
      hsl(0,0%,0%) 0,
      hsl(0,0%,0%) 0.08em,
      transparent 0.08em,
      transparent 0.2em
    );
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 0.8em 100%, 0.5em 100%;
  padding-right: 0.5em;
  padding-top: 1.25em;
  height: 22em;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.thermometer__c .thermometer__label {
	height: 2em;
}

/* 华氏度刻度 */
.thermometer__f {
  background-image: 
    repeating-linear-gradient(
      to bottom,
      hsl(0,0%,0%) 0,
      hsl(0,0%,0%) 0.08em,
      transparent 0.08em,
      transparent 1.125em
    ),
    repeating-linear-gradient(
      to bottom,
      hsl(0,0%,0%) 0,
      hsl(0,0%,0%) 0.08em,
      transparent 0.08em,
      transparent 0.225em
    );
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 0.8em 100%, 0.5em 100%;
  padding-top: 1.5em;
  padding-left: 0.25em;
  height: 22.5em;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.thermometer__f .thermometer__label {
	height: 2.25em;
}

/*.thermometer__c {*/
/*	background-position: 100% 0;*/
/*	background-size: 0.8em 1em, 0.5em 0.2em;*/
/*	padding-right: 0.5em;*/
/*	padding-top: 1.25em;*/
/*	height: 22em;*/
/*}*/
/*.thermometer__c .thermometer__label {*/
/*	height: 2em;*/
/*}*/
/*.thermometer__f {*/
/*	background-size: 0.8em 1.125em, 0.5em 0.225em;*/
/*	padding-top: 1.5em;*/
/*	padding-left: 0.25em;*/
/*	height: 22.5em;*/
/*}*/
/*.thermometer__f .thermometer__label {*/
/*	height: 2.25em;*/
/*}*/


.thermometer__mercury, .thermometer__tube:before {
	height: 100%;
}
.thermometer__mercury {
	background-color: hsl(355,85%,40%);
	box-shadow:
		-0.1em 0.1em 0.25em hsla(355,85%,40%,0.7),
		0.05em 0 0 hsla(0,0%,100%,0.5) inset;
	width: 100%;
	transform: scaleY(0);
	transform-origin: 50% 100%;
	transition: transform 0.3s ease-in-out;
}
.thermometer__ring {
	border-radius: 50% 50% 0 0;
	box-shadow: 0 0.05em 0 0.05em hsla(223,10%,30%,0.4) inset;
	top: 0.6em;
	left: calc(50% - 0.3em);
	width: 0.6em;
	height: 0.2em;
}
.thermometer__ring + .thermometer__ring {
	border-radius: 0 0 50% 50%;
	box-shadow: 0 -0.05em 0 0.05em hsla(223,10%,30%,0.4) inset;
	top: 20.2em;
}
.thermometer__title {
	flex-basis: 50%;
}
.thermometer__tube, .thermometer__tube:before {
	border-radius: 0.3em 0.3em 0 0;
}
.thermometer__tube {
	box-shadow:
		-0.1em 0.1em 0.25em hsla(0,0%,0%,0.3),
		0.05em 0 0 hsla(0,0%,100%,0.5) inset,
		0.1em 0 0.1em hsla(0,0%,0%,0.2) inset;
	flex-basis: 0.3em;
}
.thermometer__tube:before {
	background: linear-gradient(hsla(0,0%,100%,0.5),hsla(0,0%,100%,0)) 100% 0 / 25% 100% no-repeat;
	box-shadow: -0.05em 0 0.05em hsla(0,0%,0%,0.2) inset;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}
.thermometer__bulb {
	background-image: radial-gradient(100% 100% at 65% 35%,hsl(355,85%,55%) 12%,hsl(355,85%,40%) 13%,hsl(355,85%,30%));
	border-radius: 50%;
	box-shadow:
		0 -0.25em 0.25em hsla(0,85%,20%,0.7),
		-0.35em 0.35em 0.5em hsl(355,20%,50%),
		0 0 0 0.1em hsl(223,10%,60%),
		0 0 0 0.15em hsl(223,10%,90%),
		0 0 0 0.2em hsl(223,10%,30%),
		0 0 0 0.05em hsl(355,85%,30%) inset,
		-0.1em 0.1em 0 hsl(355,85%,43%) inset;
	margin: auto;
	width: 2em;
	height: 2em;
}




/* Dark theme */
/*@media (prefers-color-scheme: dark) {*/
/*	:root {*/
/*		--bg: #17181c;*/
/*		--fg: #e3e4e8;*/
/*	}*/
/*	.thermometer {*/
/*		background-image: linear-gradient(-135deg,hsl(223,10%,35%),hsl(223,10%,15%));*/
/*		box-shadow:*/
/*			0.2em 0 0.1em hsl(223,10%,15%) inset,*/
/*			0 -0.2em 0.1em hsl(223,10%,15%) inset,*/
/*			-0.1em 0 0 hsl(223,10%,30%) inset,*/
/*			0 0.1em 0 hsl(223,10%,30%) inset;*/
/*	}*/
/*	.thermometer:before {*/
/*		background-image: linear-gradient(hsl(223,10%,40%),hsl(223,10%,30%));*/
/*		box-shadow:*/
/*			-0.1em 0.1em 0.1em hsl(223,10%,5%) inset,*/
/*			0.2em -0.2em 0.4em hsl(223,10%,40%) inset,*/
/*			-0.3em 0.2em 0.4em hsl(223,10%,5%) inset,*/
/*			0.1em -0.1em 0.1em hsl(223,10%,20%),*/
/*			0.5em -0.5em 0.3em hsl(223,10%,15%),*/
/*			0 0 0.4em 0.4em hsl(223,10%,40%);*/
/*	}*/
/*	.thermometer__c, .thermometer__f {*/
/*		background-image:*/
/*			linear-gradient(hsl(0,0%,100%) 0.1em,hsla(0,0%,100%,0) 0.1em),*/
/*			linear-gradient(hsl(0,0%,100%) 0.1em,hsla(0,0%,100%,0) 0.1em);*/
/*	}*/
/*	.thermometer__ring {*/
/*		box-shadow: 0 0.05em 0 0.05em hsla(223,10%,80%,0.4) inset;*/
/*	}*/
/*	.thermometer__ring + .thermometer__ring {*/
/*		box-shadow: 0 -0.05em 0 0.05em hsla(223,10%,80%,0.4) inset;*/
/*	}*/
/*	.thermometer__bulb {*/
/*		box-shadow:*/
/*			0 -0.25em 0.25em hsla(0,85%,20%,0.7),*/
/*			-0.35em 0.35em 0.5em hsl(355,20%,25%),*/
/*			0 0 0 0.1em hsl(223,10%,10%),*/
/*			0 0 0 0.15em hsl(223,10%,40%),*/
/*			0 0 0 0.2em hsl(223,10%,15%),*/
/*			0 0 0 0.05em hsl(355,85%,30%) inset,*/
/*			-0.1em 0.1em 0 hsl(355,85%,43%) inset;*/
/*	}*/
/*}*/