/* 画面全体の中央配置と最大幅の制限 */
.all_body { 
	font-family: 'メイリオ', Arial, sans-serif;
	background-color: #fff5f7; 
	color: #5a4a4a; 
	margin: 0px auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
h2 { color: #d88194; border-bottom: 2px solid #ffcad4; padding-bottom: 10px; }

.input-area {
	background: white;
	padding: 30px;
	border-radius: 30px;
	box-shadow: 0 6px 15px rgba(255, 182, 193, 0.4);
	margin-bottom: 30px;
	text-align: center;
	width: 90%;
	max-width: 500px;
}

.input-group {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	gap: 15px;
	margin-bottom: 20px;
}

.input-item {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.input-label {
	font-size: 16px;
	font-weight: 900;
	color: #d88194;
	margin-bottom: 5px;
}

input {
	border: 3px solid #ffcad4;
	border-radius: 12px;
	padding: 10px;
	font-size: 20px;
	font-weight: bold;
	outline: none;
	width: 100px;
	color: #5a4a4a;
	text-align: center;
	background-color: #fffafb;
}

/* 数値入力のスピンボタンを常に表示、または消す設定（お好みで） */
input::-webkit-inner-spin-button, 
input::-webkit-outer-spin-button { opacity: 1; }

button {
	display: block;
	width: 100%;
	background-color: #ffcad4;
	border: none;
	border-radius: 15px;
	padding: 15px;
	color: white;
	font-size: 22px;
	font-weight: 900;
	cursor: pointer;
	transition: 0.3s;
	box-shadow: 0 4px 0 #f8adbc;
}
button:active {
	transform: translateY(3px);
	box-shadow: none;
}

table { 
	border-collapse: separate; 
	border-spacing: 0;
	width: 100%; 
	max-width: 850px; 
	background: white;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(255, 182, 193, 0.2);
}
th, td { border-bottom: 1px solid #fff0f3; padding: 12px; text-align: center; }
th { background-color: #ffeff2; color: #d88194; font-size: 0.85em; }

.ideal { background-color: #ffff00 !important; font-weight: bold; } 
.normal { background-color: #fff9c4; } 
.warning { background-color: #fffde7; } 

.star { color: #d88194; font-weight: bold; font-size: 1.2em; }
.judgment-text { font-size: 0.85em; font-weight: bold; }